Funzione DsAddSidHistoryA (ntdsapi.h)

La funzione DsAddSidHistory recupera l'identificatore di sicurezza dell'account primario (SID) di un'entità di sicurezza da un dominio e lo aggiunge all'attributo sIDHistory di un'entità di sicurezza in un altro dominio in una foresta diversa. Quando il dominio di origine è in modalità nativa di Windows 2000, questa funzione recupera anche i valori di sIDHistory dell'entità di origine e li aggiunge all'entità di destinazione sIDHistory.

La funzione DsAddSidHistory esegue una funzione sensibile alla sicurezza aggiungendo il SID dell'account primario di un'entità di sicurezza esistente al sIDHistory di un'entità in un dominio in una foresta diversa, concedendo in modo efficace all'ultimo accesso a tutte le risorse accessibili al primo. Per altre informazioni sulle implicazioni relative all'uso e alla sicurezza di questa funzione, vedere Using DsAddSidHistory.

Sintassi

NTDSAPI DWORD DsAddSidHistoryA(
  [in] HANDLE                   hDS,
  [in] DWORD                    Flags,
  [in] LPCSTR                   SrcDomain,
  [in] LPCSTR                   SrcPrincipal,
  [in] LPCSTR                   SrcDomainController,
  [in] RPC_AUTH_IDENTITY_HANDLE SrcDomainCreds,
  [in] LPCSTR                   DstDomain,
  [in] LPCSTR                   DstPrincipal
);

Parametri

[in] hDS

Contiene un handle del servizio directory ottenuto dalla funzione DSBind o DSBindWithCred.

[in] Flags

Riservato per uso futuro. Impostare su NULL.

[in] SrcDomain

Puntatore a una stringa con terminazione Null che specifica il nome del dominio su cui eseguire una query per il SID di SrcPrincipal.

Se il dominio di origine viene eseguito nei sistemi operativi Windows Server, SrcDomain può essere un nome DNS (Domain Name System), ad esempio fabrikam.com o netBIOS flat, ad esempio Fabrikam, name. I nomi DNS devono essere usati quando possibile.

[in] SrcPrincipal

Puntatore a una stringa con terminazione Null che specifica il nome di un'entità di sicurezza, un utente o un gruppo nel dominio di origine. Questo nome è un nome sam (Security Account Manager) relativo al dominio, ad esempio evacore.

[in] SrcDomainController

Puntatore a una stringa con terminazione Null che specifica il nome dell'emulatore del controller di dominio primario (PDC) nel dominio di origine da usare per il recupero sicuro del SID dell'entità di origine e della generazione del controllo.

Se questo parametro è NULL, DSBindWithCred selezionerà il controller di dominio primario.

SrcDomainController può essere un nome DNS o un nome NetBIOS flat. I nomi DNS devono essere usati quando possibile.

[in] SrcDomainCreds

Contiene un handle di identità che rappresenta l'identità e le credenziali di un utente con diritti amministrativi nel dominio di origine. Per ottenere questo handle, chiamare DsMakePasswordCredentials. Questo utente deve essere membro del gruppo Administrators o Domain Administrators. Se questa chiamata viene effettuata da un computer remoto al controller di dominio di destinazione, sia il computer remoto che il controller di dominio di destinazione devono supportare la crittografia a 128 bit per proteggere la privacy delle credenziali. Se la crittografia a 128 bit non è disponibile e vengono fornite SrcDomainCreds, la chiamata deve essere effettuata nel controller di dominio di destinazione.

Se questo parametro è NULL, le credenziali del chiamante vengono usate per l'accesso al dominio di origine. L'utente chiamante necessita quindi di diritti amministrativi nel dominio di origine.

[in] DstDomain

Puntatore a una stringa con terminazione Null che specifica il nome del dominio di destinazione in cui risiede DstPrincipal. Questo nome può essere un nome DNS, ad esempio fabrikam.com o un nome NetBIOS, ad esempio Fabrikam. Il dominio di destinazione deve eseguire la modalità nativa di Windows 2000.

[in] DstPrincipal

Puntatore a una stringa con terminazione Null che specifica il nome di un'entità di sicurezza, un utente o un gruppo nel dominio di destinazione. Questo nome SAM relativo al dominio identifica l'entità il cui attributo sIDHistory viene aggiornato con il SID del SrcPrincipal.

Valore restituito

Restituisce un codice di errore Win32 incluso quanto segue.

Osservazioni

Nota

L'intestazione ntdsapi.h definisce DsAddSidHistory come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice che non è indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere convenzioni di per i prototipi di funzioni.

Fabbisogno

Requisito Valore
client minimo supportato Windows Vista
server minimo supportato Windows Server 2008
piattaforma di destinazione Finestre
intestazione ntdsapi.h
libreria Ntdsapi.lib
dll Ntdsapi.dll

Vedere anche

DSBind

DSBindWithCred

controller di dominio e funzioni di gestione della replica

DsMakePasswordCredentials

uso di DsAddSidHistory

ldap_bind_s

ldap_open