Método IObjectContext::IsCallerInRole (comsvcs.h)
Indica se o chamador direto do objeto está em uma função especificada (diretamente ou como parte de um grupo).
Sintaxe
HRESULT IsCallerInRole(
[in] BSTR bstrRole,
[out] BOOL *pfIsInRole
);
Parâmetros
[in] bstrRole
O nome da função.
[out] pfIsInRole
TRUE se o chamador estiver na função especificada; FALSE se não estiver. Esse parâmetro também será definido como TRUE se a segurança não estiver habilitada.
Valor retornado
Esse método pode retornar os valores a seguir.
Código de retorno | Descrição |
---|---|
|
A função especificada no parâmetro bstrRole é uma função reconhecida e o resultado booliano retornado no parâmetro pbIsInRole indica se o chamador está nessa função. |
|
A função especificada no parâmetro bstrRole não existe. |
|
Um ou mais dos argumentos passados não são válidos. |
|
Erro inesperado. Isso pode acontecer se um objeto passar seu ponteiro IObjectContext para outro objeto e o outro objeto chamar IsCallerInRole usando esse ponteiro. Um ponteiro IObjectContext não é válido fora do contexto do objeto que o obteve originalmente. |
Comentários
Use esse método para determinar se o chamador direto do método em execução no momento está associado a uma função específica. Uma função é um nome simbólico que representa um usuário ou grupo de usuários que têm permissões de acesso específicas para todos os componentes em um determinado aplicativo COM+. Os desenvolvedores definem funções quando criam um componente e as funções são mapeadas para usuários ou grupos individuais no momento da implantação.
IsCallerInRole aplica-se somente ao chamador direto do método em execução no momento. (O chamador direto é o processo que chama o processo do servidor atual. Pode ser um processo de cliente base ou um processo de servidor.) IsCallerInRole não se aplica ao processo que iniciou a sequência de chamadas da qual o método atual foi chamado ou a outros chamadores nessa sequência.
Como IsCallerInRole retorna TRUE quando o objeto que o invoca está em execução no processo de um cliente, é uma boa ideia chamar IsSecurityEnabled antes de chamar IsCallerInRole. Se a segurança não estiver habilitada, IsCallerInRole não retornará um resultado preciso.
Requisitos
Cliente mínimo com suporte | Windows 2000 Professional [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows 2000 Server [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | comsvcs.h |