Método ISecurityCallContext::IsCallerInRole (comsvcs.h)
Determina si el autor de la llamada directa está en el rol especificado.
HRESULT IsCallerInRole(
[in] BSTR bstrRole,
[out] VARIANT_BOOL *pfInRole
);
[in] bstrRole
Nombre del rol.
[out] pfInRole
TRUE si el autor de la llamada 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.
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 |
---|---|
|
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 autor de la llamada está en ese rol. |
|
El rol especificado en el parámetro bstrRole no existe. |
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.
IsCallerInRole solo se aplica al autor de la llamada directa del método que se está ejecutando actualmente. IsCallerInRole no se aplica a ningún otro llamador de la secuencia de llamadas desde la que se llamó al método actual. Sin embargo, puede obtener información sobre otros autores de llamada en la secuencia mediante el método de propiedad get_Item para obtener la propiedad Callers del objeto de contexto de llamada de seguridad.
Dado que IsCallerInRole es TRUE cuando la seguridad basada en roles no está habilitada, es recomendable llamar a IsSecurityEnabled antes de llamar a IsCallerInRole para asegurarse de que IsCallerInRole devuelve información útil.
Requisito | Value |
---|---|
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 |