Obtendo informações de uma ACL
Várias funções são fornecidas que recuperam informações de controle de acesso de uma ACL ( lista de controle de acesso ). Elas incluem funções para determinar os direitos de acesso que uma ACL concede ou audita para um administrador especificado. Outras funções permitem extrair informações sobre as ACEs (entradas de controle de acesso ) em uma ACL.
A função GetExplicitEntriesFromAcl recupera uma matriz de estruturas EXPLICIT_ACCESS que descrevem os ACEs em uma ACL. Isso pode ser útil ao copiar informações de ACE de uma ACL para outra. Por exemplo, uma chamada para GetExplicitEntriesFromAcl para obter informações sobre os ACEs em uma ACL pode ser seguida passando as estruturas de EXPLICIT_ACCESS retornadas em uma chamada para a função SetEntriesInAcl para criar ACEs equivalentes em uma nova ACL.
A função GetEffectiveRightsFromAcl permite determinar os direitos de acesso efetivos que uma DACL concede a um administrador especificado. Os direitos de acesso efetivos do administrador são os direitos de acesso que uma DACL concede ao administrador ou a qualquer grupo do qual o administrador seja membro. GetEffectiveRightsFromAcl verifica todos os ACEs permitidos de acesso e acesso negado na DACL especificada.
Use as etapas a seguir para determinar os direitos de acesso de um administrador a um objeto
- Chame a função GetSecurityInfo ou GetNamedSecurityInfo para obter um ponteiro para a DACL de um objeto.
- Chame a função GetEffectiveRightsFromAcl para recuperar os direitos de acesso que a DACL concede a um administrador especificado.
A função GetAuditedPermissionsFromAcl permite que você marcar um SACL para determinar os direitos de acesso auditados para um administrador especificado ou para qualquer grupo do qual o administrador seja membro. Os direitos auditados indicam os tipos de tentativas de acesso que fazem com que o sistema gere um registro de auditoria no log de eventos de segurança. A função retorna duas máscaras de acesso: uma contendo os direitos de acesso monitorados para tentativas de acesso com falha e outra que contém os direitos de acesso monitorados para acesso bem-sucedido. GetAuditedPermissionsFromAcl verifica todos os ACEs de auditoria do sistema em um SACL.