Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Um aplicativo de servidor protegido deve verificar os direitos de acesso de um cliente antes de permitir que o cliente acesse um objeto privado protegido. Para fazer isso, o servidor passa um token de impersonação , um descritor de segurança e um conjunto de direitos de acesso solicitados para AccessCheck. As entradas de controle de acesso (ACEs) na DACLdo descritor de segurançaespecificam os direitos de acesso permitidos ou negados a vários administradores. A função AccessCheck compara o trustee em cada ACE com os trustees identificados no token de personificação. Para obter uma descrição do algoritmo usado para conceder ou negar acesso, consulte Como as DACLs controlam o acesso a um objeto.
A função AccessCheckAndAuditAlarm executa uma verificação de acesso semelhante. Além disso, ele gera registros de auditoria no log de eventos de segurança, dependendo da SACL no descritor de segurança.
As funções AccessCheckByType e AccessCheckByTypeAndAuditAlarm são semelhantes às AccessCheck e AccessCheckAndAuditAlarm, exceto que permitem verificar o acesso aos subobjetos de um objeto, como conjuntos de propriedades ou propriedades. As funções AccessCheckByTypeResultList e AccessCheckByTypeResultListAndAuditAlarm também são semelhantes a AccessCheck, exceto que fornecem os resultados da verificação de acesso para cada subobjeto em uma hierarquia das propriedades e conjuntos de propriedades do objeto. Essas funções usam a estrutura OBJECT_TYPE_LIST para descrever a hierarquia de objetos para os quais o acesso é verificado. As funções que geram uma mensagem de auditoria usam o tipo de enumeração AUDIT_EVENT_TYPE para indicar se o objeto que está sendo verificado é um objeto de serviço de diretório. Para obter mais informações sobre a hierarquia de um objeto e seus subobjetos, consulte ACEs para controlar o acesso às propriedades de um objeto.
Os direitos de acesso solicitados passados para o AccessCheck e funções de AccessCheckAndAuditAlarm não devem incluir nenhum direitos de acesso genéricos. O servidor pode usar a funçãoMapGenericMaskpara converter quaisquer direitos de acesso genéricos para os direitos específicos e padrão correspondentes de acordo com o mapeamento especificado na estrutura GENERIC_MAPPING.
As funções AreAllAccessesGranted e AreAnyAccessesGranted comparam umde máscara de acessosolicitado com uma máscara de acesso concedida.
Para obter um código de exemplo que usa a função AccessCheck, consulte Verificar o acesso do cliente com ACLs em C++.
A função ConvertToAutoInheritPrivateObjectSecurity cria e retorna um descritor de segurança em um formato que permite a propagação automática de ACEs herdáveis. Este descritor de segurança contém todas as ACEs, herdadas e não herdadas, do descritor de segurança atual e está no formato auto-relativo . A função ConvertToAutoInheritPrivateObjectSecurity determina se as ACEs são herdadas ou não herdadas ao comparar todas as ACEs no descritor de segurança atual com todas as ACEs no seu descritor de segurança pai. Pode não haver uma correspondência um-para-um entre os dois grupos de ACEs. Por exemplo, uma ACE que permite permissão de leitura/gravação pode ser equivalente a duas ACEs: uma ACE que permite permissão de leitura e uma ACE que permite permissão de gravação. Um descritor de segurança pai pode não ser fornecido quando o descritor de segurança atual é o pai.