DsInheritSecurityIdentityA-Funktion (ntdsapi.h)
Die funktion
Syntax
NTDSAPI DWORD DsInheritSecurityIdentityA(
[in] HANDLE hDS,
[in] DWORD Flags,
[in] LPCSTR SrcPrincipal,
[in] LPCSTR DstPrincipal
);
Parameter
[in] hDS
Enthält ein Verzeichnisdiensthandle, das entweder vom DSBind- oder DSBindWithCredWithCred-Funktion abgerufen wird.
[in] Flags
Reserviert für die zukünftige Verwendung. Muss null sein.
[in] SrcPrincipal
Zeigen Sie auf eine mit Null beendete Zeichenfolge, die den Namen eines Sicherheitsprinzipals (Benutzer oder Gruppe) in der Quelldomäne angibt. Dieser Name ist ein domänenrelativer SAM-Name.
[in] DstPrincipal
Zeigen Sie auf eine mit Null beendete Zeichenfolge, die den Namen eines Sicherheitsprinzipals (Benutzer oder Gruppe) in der Zieldomäne angibt. Dieser domänenrelative SAM-Name identifiziert den Prinzipal, dessen sidHistory Attribut mit der SID von SrcPrincipalaktualisiert wird.
Rückgabewert
Gibt einen System- oder RPC-Fehlercode einschließlich der folgenden Zurück.
Bemerkungen
Bei Domänenanwendungen des Betriebssystemupgrades, die sowohl aktualisierte als auch nicht aktualisierte Domänen umfassen, können Sicherheitsprinzipale innerhalb und außerhalb der Gesamtstruktur für dieselbe logische Entität gleichzeitig vorhanden sein.
Wenn alle aktualisierten Domänen derselben Gesamtstruktur beigetreten sind, DsInheritSecurityIdentity die duplizierten Objekte entfernt, während sichergestellt wird, dass die verbleibenden Objekte alle Sicherheitsrechte und Berechtigungen haben, die zu ihrem jeweiligen gelöschten Objekt gehören.
Eine DsInheritSecurityIdentity Implementierung:
- Überprüft, ob SrcPrincipal und DstPrincipal- sich in derselben Domäne befinden.
- Überprüft, ob die Domäne bei der Bindung an den Server schreibbar ist.
- Überprüft, ob die Überwachung für die Domäne aktiviert ist.
- Überprüft, ob der Aufrufer Mitglied der Domänenadministratoren für die Domäne ist.
- Überprüft, ob sich die Domäne im nativen Modus befindet.
- Überprüft, ob SrcPrincipal vorhanden ist, dass es sich um einen Sicherheitsprinzipal handelt und dessen objectSid- und sidHistory- Eigenschaften gelesen hat.
- Überprüft, ob DstPrincipal- vorhanden ist, dass es sich um einen Sicherheitsprinzipal handelt und bestimmte Eigenschaften gelesen hat, die für die Überwachung und Überprüfung erforderlich sind.
- Löscht SrcPrincipal in der Datenbank nur, wenn der gesamte Vorgang zum Abschluss zugesichert wird. Dieser Vorgang schlägt fehl, wenn der Aufrufer keine Löschrechte hat oder wenn SrcPrincipal- untergeordnete Elemente aufweist.
- Schlägt den Vorgang fehl, wenn die objectSid- von SrcPrincipal oder DstPrincipal eine bekannte SID ist.
- Fügt die objectSid und die sidHistory (sofern vorhanden) SrcPrincipal zur sidHistory von DstPrincipalhinzu.
- Erzwingt ein Überwachungsereignis und schlägt den Vorgang fehl, wenn die Überwachung fehlschlägt.
- Gibt Ereignisse in das Verzeichnisdienstprotokoll ein. Verwechseln Sie dies nicht mit dem Sicherheitsüberwachungsprotokoll.
Anmerkung
Der ntdsapi.h-Header definiert DsInheritSecurityIdentity als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Windows Vista |
mindestens unterstützte Server- | Windows Server 2008 |
Zielplattform- | Fenster |
Header- | ntdsapi.h |
Library | Ntdsapi.lib |
DLL- | Ntdsapi.dll |