Compartilhar via


Função RsopAccessCheckByType (userenv.h)

A função RSoPAccessCheckByType determina se um descritor de segurança concede um conjunto especificado de direitos de acesso ao cliente identificado por um RSOPTOKEN.

Sintaxe

USERENVAPI HRESULT RsopAccessCheckByType(
  [in]  PSECURITY_DESCRIPTOR pSecurityDescriptor,
  [in]  PSID                 pPrincipalSelfSid,
  [in]  PRSOPTOKEN           pRsopToken,
  [in]  DWORD                dwDesiredAccessMask,
  [in]  POBJECT_TYPE_LIST    pObjectTypeList,
  [in]  DWORD                ObjectTypeListLength,
  [in]  PGENERIC_MAPPING     pGenericMapping,
  [in]  PPRIVILEGE_SET       pPrivilegeSet,
  [in]  LPDWORD              pdwPrivilegeSetLength,
  [out] LPDWORD              pdwGrantedAccessMask,
  [out] LPBOOL               pbAccessStatus
);

Parâmetros

[in] pSecurityDescriptor

Ponteiro para um SECURITY_DESCRIPTOR em relação ao qual o acesso no objeto é verificado.

[in] pPrincipalSelfSid

Ponteiro para um SID. Se o descritor de segurança estiver associado a um objeto que representa uma entidade de segurança (por exemplo, um objeto de usuário), esse parâmetro deverá ser o SID do objeto. Ao avaliar o acesso, esse SID substitui logicamente o SID em qualquer ACE que contenha o sid PRINCIPAL_SELF conhecido ("S-1-5-10"). Para obter mais informações, consulte Identificadores de segurança e SIDs conhecidos.

Esse parâmetro deverá ser NULL se o objeto protegido não representar uma entidade de segurança.

[in] pRsopToken

Ponteiro para um RSOPTOKEN válido que representa o cliente que tenta obter acesso ao objeto .

[in] dwDesiredAccessMask

Especifica uma máscara de acesso que indica os direitos de acesso para marcar. Essa máscara pode conter uma combinação de direitos de acesso genéricos, padrão e específicos. Para obter mais informações, consulte Direitos de Acesso e Máscaras de Acesso.

[in] pObjectTypeList

Ponteiro para uma matriz de estruturas OBJECT_TYPE_LIST que identificam a hierarquia de tipos de objeto para os quais marcar acesso. Cada elemento na matriz especifica um GUID que identifica o tipo de objeto e um valor que indica o nível do tipo de objeto na hierarquia de tipos de objeto. A matriz não deve ter dois elementos com o mesmo GUID.

A matriz deve ter pelo menos um elemento. O primeiro elemento na matriz deve estar no nível zero e identificar o próprio objeto. A matriz pode ter apenas um elemento de nível zero. O segundo elemento é um subobjeto, como um conjunto de propriedades, no nível 1. Seguindo cada entrada de nível 1 estão entradas subordinadas para os subobjetos de nível 2 a 4. Assim, os níveis para os elementos na matriz podem ser {0, 1, 2, 2, 1, 2, 3}. Se a lista de tipos de objeto estiver fora de ordem, RSoPAccessCheckByType falhará e GetLastError retornará ERROR_INVALID_PARAMETER.

[in] ObjectTypeListLength

Especifica o número de elementos na matriz pObjectTypeList .

[in] pGenericMapping

Ponteiro para a estrutura GENERIC_MAPPING associada ao objeto para o qual o acesso está sendo verificado.

[in] pPrivilegeSet

No momento, esse parâmetro não é usado.

[in] pdwPrivilegeSetLength

No momento, esse parâmetro não é usado.

[out] pdwGrantedAccessMask

Ponteiro para uma máscara de acesso que recebe os direitos de acesso concedidos.

Se a função for bem-sucedida, o parâmetro pbAccessStatus será definido como TRUE e a máscara será atualizada para conter os direitos padrão e específicos concedidos. Se pbAccessStatus estiver definido como FALSE, esse parâmetro será definido como zero. Se a função falhar, a máscara não será modificada.

[out] pbAccessStatus

Ponteiro para uma variável que recebe os resultados da marcar de acesso.

Se a função for bem-sucedida e o conjunto solicitado de direitos de acesso for concedido, esse parâmetro será definido como TRUE. Caso contrário, esse parâmetro será definido como FALSE. Se a função falhar, o status não será modificado.

Retornar valor

Se a função for bem-sucedida, o valor retornado será S_OK. Caso contrário, a função retornará um dos códigos de erro COM definidos no arquivo de cabeçalho do SDK da Plataforma WinError.h.

Comentários

A função RSoPAccessCheckByType compara o descritor de segurança especificado com o RSOPTOKEN especificado e indica, no parâmetro pbAccessStatus , se o acesso é concedido ou negado.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows Vista
Servidor mínimo com suporte Windows Server 2008
Plataforma de Destino Windows
Cabeçalho userenv.h
Biblioteca Userenv.lib
DLL Userenv.dll

Confira também

Funções Política de Grupo

Visão geral da Política de Grupo

RSoPFileAccessCheck