LsaRemoveAccountRights-Funktion (ntsecapi.h)

Die LsaRemoveAccountRights-Funktion entfernt ein oder mehrere Berechtigungen aus einem Konto. Sie können die zu entfernenden Berechtigungen angeben oder ein Flag festlegen, um alle Berechtigungen zu entfernen. Wenn Sie alle Berechtigungen entfernen, löscht die Funktion das Konto. Wenn Sie Berechtigungen angeben, die nicht im Konto enthalten sind, werden diese von der Funktion ignoriert.

Syntax

NTSTATUS LsaRemoveAccountRights(
  [in] LSA_HANDLE          PolicyHandle,
  [in] PSID                AccountSid,
  [in] BOOLEAN             AllRights,
  [in] PLSA_UNICODE_STRING UserRights,
  [in] ULONG               CountOfRights
);

Parameter

[in] PolicyHandle

Ein Handle für ein Policy-Objekt . Das Handle muss über das POLICY_LOOKUP_NAMES-Zugriffsrecht verfügen. Weitere Informationen finden Sie unter Öffnen eines Richtlinienobjekthandles.

[in] AccountSid

Zeiger auf die Sicherheits-ID (SID) des Kontos, aus dem die Berechtigungen entfernt werden.

[in] AllRights

Bei TRUE entfernt die Funktion alle Berechtigungen und löscht das Konto. In diesem Fall ignoriert die Funktion den UserRights-Parameter . Bei FALSE entfernt die Funktion die vom UserRights-Parameter angegebenen Berechtigungen.

[in] UserRights

Zeiger auf ein Array von LSA_UNICODE_STRING Strukturen. Jede Struktur enthält den Namen einer Berechtigung, die aus dem Konto entfernt werden soll. Eine Liste der Berechtigungsnamen finden Sie unter Berechtigungskonstanten.

[in] CountOfRights

Gibt die Anzahl der Elemente im UserRights-Array an.

Rückgabewert

Wenn die Funktion erfolgreich ist, wird der Rückgabewert STATUS_SUCCESS.

Wenn die Funktion fehlschlägt, ist der Rückgabewert ein NTSTATUS-Code, der einer der folgenden Werte oder einer der Rückgabewerte der LSA-Richtlinienfunktion sein kann.

Wert BESCHREIBUNG
STATUS_NO_SUCH_PRIVILEGE
Einer der Berechtigungsnamen ist ungültig.
STATUS_INVALID_PARAMETER
Gibt an, dass der UserRights-ParameterNULL und der AllRights-ParameterFALSE lautet.
 

Sie können die LsaNtStatusToWinError-Funktion verwenden, um den NTSTATUS-Code in einen Windows-Fehlercode zu konvertieren.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows XP [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile ntsecapi.h
Bibliothek Advapi32.lib
DLL Advapi32.dll

Weitere Informationen

LSA_UNICODE_STRING

LsaAddAccountRights

LsaEnumerateAccountRights