Método ObjectContext::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] VARIANT_BOOL *pbInRole
);
Parâmetros
[in] bstrRole
O nome da função.
[out] pbInRole
TRUE se o chamador estiver na função especificada; FALSE caso contrário. Esse parâmetro também será definido como TRUE se a segurança não estiver habilitada.
Retornar valor
Esse método pode retornar os valores de retorno padrão E_INVALIDARG, E_OUTOFMEMORY e E_FAIL, bem como 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. |
|
Ocorreu um erro inesperado. Isso pode acontecer se um objeto passar o ponteiro ObjectContext para outro objeto e o outro objeto chamar IsCallerInRole usando esse ponteiro. Um ponteiro ObjectContext 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 de chamada para o processo de 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 para qualquer outro chamador nessa sequência.
Como IsCallerInRole retorna TRUE quando o objeto que o invoca está sendo executado 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
Requisito | Valor |
---|---|
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 |