Método ISecurityCallContext::IsUserInRole (comsvcs.h)

Determina si el usuario especificado está en el rol especificado.

Sintaxis

HRESULT IsUserInRole(
  [in]  VARIANT      *pUser,
  [in]  BSTR         bstrRole,
  [out] VARIANT_BOOL *pfInRole
);

Parámetros

[in] pUser

Puntero al valor que contiene el identificador de usuario del usuario cuya pertenencia a roles se va a comprobar. Si tiene previsto pasar el identificador de seguridad (SID) a IsUserInRole, este parámetro debe cumplir los siguientes requisitos: V_VT(pUser) == (VT_ARRAY|VT_UI1) && V_ARRAY(pUser)->cDims == 1.

[in] bstrRole

Nombre del rol.

[out] pfInRole

TRUE si el usuario está en el rol especificado; False si no es así. Si el rol especificado no está definido para la aplicación, se devuelve FALSE . Este parámetro se establece en TRUE si la seguridad basada en roles no está habilitada.

Valor devuelto

Este método puede devolver los valores devueltos estándar E_INVALIDARG, E_OUTOFMEMORY, E_UNEXPECTED y E_FAIL, así como los siguientes valores.

Código devuelto Descripción
S_OK
El rol especificado en el parámetro bstrRole es un rol reconocido y el resultado booleano devuelto en el parámetro pfIsInRole indica si el usuario está en ese rol.
CONTEXT_E_ROLENOTFOUND
El rol especificado en el parámetro bstrRole no existe.

Comentarios

Use este método para limitar el acceso a secciones de código que no se deben ejecutar a menos que el autor de la llamada sea miembro del rol especificado. Los grupos y usuarios de Windows se asignan a los roles de una aplicación mediante la herramienta de administración servicios de componentes. Para obtener más información sobre los roles, vea Seguridad basada en roles.

Dado que IsUserInRole es TRUE cuando la seguridad basada en roles no está habilitada, es recomendable llamar a IsSecurityEnabled antes de llamar a IsUserInRole para asegurarse de que IsUserInRole devuelve información útil.

Requisitos

   
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado comsvcs.h

Consulte también

ISecurityCallContext

Seguridad de componentes mediante programación