Condividi tramite


Funzione LookupSecurityDescriptorPartsA (aclapi.h)

La funzione LookupSecurityDescriptorParts recupera le informazioni di sicurezza da un descrittore di sicurezza self-relative.

Sintassi

DWORD LookupSecurityDescriptorPartsA(
  [out, optional] PTRUSTEE_A           *ppOwner,
  [out, optional] PTRUSTEE_A           *ppGroup,
  [out, optional] PULONG               pcCountOfAccessEntries,
  [out, optional] PEXPLICIT_ACCESS_A   *ppListOfAccessEntries,
  [out, optional] PULONG               pcCountOfAuditEntries,
  [out, optional] PEXPLICIT_ACCESS_A   *ppListOfAuditEntries,
  [in]            PSECURITY_DESCRIPTOR pSD
);

Parametri

[out, optional] ppOwner

Puntatore a una variabile che riceve un puntatore a una struttura TRUSTEE . La funzione cerca il nome associato al proprietario identificatore di sicurezza (SID) nel descrittore di sicurezzapSDe restituisce un puntatore al nome nel ptstrName membro della struttura TRUSTEE . La funzione imposta il membro TrusteeForm su TRUSTEE_IS_NAME.

Questo parametro può essere NULL se non si è interessati al nome del proprietario.

[out, optional] ppGroup

Puntatore a una variabile che riceve un puntatore a una struttura TRUSTEE . La funzione cerca il nome associato al SID del gruppo primario del descrittore di sicurezza e restituisce un puntatore al nome nel ptstrName membro della struttura TRUSTEE. La funzione imposta il membro TrusteeForm su TRUSTEE_IS_NAME.

Questo parametro può essere NULL se non si è interessati al nome del gruppo.

[out, optional] pcCountOfAccessEntries

Puntatore a un ULONG che riceve il numero di strutture EXPLICIT_ACCESS restituite nella matrice pListOfAccessEntries. Questo parametro può essere null solo se anche il parametro pListOfAccessEntries è NULL.

[out, optional] ppListOfAccessEntries

Puntatore a una variabile che riceve un puntatore a una matrice di strutture EXPLICIT_ACCESS che descrivono le voci di controllo di accesso (ACL) nell 'elenco di controllo di accesso discrezionale (DACL) del descrittore di sicurezza. La struttura di TRUSTEE in queste strutture di EXPLICIT_ACCESS utilizza il modulo TRUSTEE_IS_NAME. Per una descrizione di come una matrice di strutture di EXPLICIT_ACCESS descrive gli ACL in un elenco di controllo di accesso (ACL), vedere la funzione GetExplicitEntriesFromAcl. Se questo parametro è NULL, anche il parametro cCountOfAccessEntries deve essere NULL.

[out, optional] pcCountOfAuditEntries

Puntatore a un ULONG che riceve il numero di strutture EXPLICIT_ACCESS restituite nella matrice pListOfAuditE ntries. Questo parametro può essere NULL solo se anche il parametro pListOfAuditEntries è NULL.

[out, optional] ppListOfAuditEntries

Puntatore a una variabile che riceve un puntatore a una matrice di strutture EXPLICIT_ACCESS che descrivono gli ACL nell'elenco di controllo di accesso di sistema (SACL) del descrittore di sicurezza. La struttura di TRUSTEE in queste strutture di EXPLICIT_ACCESS utilizza il form TRUSTEE_IS_NAME. Se questo parametro è NULL, anche il parametro cCountOfAuditEntries deve essere NULL.

[in] pSD

Puntatore a un descrittore di sicurezza self-relative esistente da cui la funzione recupera le informazioni di sicurezza.

Valore restituito

Se la funzione ha esito positivo, la funzione restituisce ERROR_SUCCESS.

Se la funzione ha esito negativo, restituisce un codice di errore diverso da zero definito in WinError.h.

Osservazioni

La funzione LookupSecurityDescriptorParts recupera i nomi del proprietario e del gruppo primario del descrittore di sicurezza. Questa funzione restituisce anche descrizioni degli ACL nelle voci DACL e audit-control nell'elenco SACL del descrittore di sicurezza.

I parametri diversi da pSD possono essere NULL se non si è interessati alle informazioni. Se non si desiderano informazioni sull'elenco DACL, sia pListOfAccessEntries che cCountOfAuditEntries devono essere NULL. Se non si desiderano informazioni su SACL, sia pListOfAuditEntries che cCountOfAuditEntries devono essere NULL. Analogamente, se si desiderano informazioni DACL o SACL, entrambi i parametri corrispondenti non devono essere NULL.

Al termine dell'uso di uno dei buffer restituiti dal pOwner, pGroup, pListOfAccessEntrieso pListOfAuditEntries parametri, liberarli chiamando la funzione LocalFree .

La funzione LookupSecurityDescriptorParts è destinata a server attendibili che implementano o espongono la sicurezza nei propri oggetti. La funzione funziona con un descrittore di sicurezza auto-relativo adatto per la serializzazione in un flusso e l'archiviazione su disco, in quanto un server attendibile potrebbe richiedere.

Nota

L'intestazione aclapi.h definisce LookupSecurityDescriptorParts 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 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 XP [solo app desktop]
server minimo supportato Windows Server 2003 [solo app desktop]
piattaforma di destinazione Finestre
intestazione aclapi.h
libreria Advapi32.lib
dll Advapi32.dll

Vedere anche

ace

ACL

funzioni di controllo di accesso client/server

Panoramica del controllo di accesso client/server

EXPLICIT_ACCESS

GetExplicitEntriesFromAcl

LocalFree

SECURITY_DESCRIPTOR

SID

TRUSTEE