Serviços de Segurança do MSMQ

Mensagens RPC síncronas podem usar qualquer um dos recursos de segurança disponíveis no tempo de execução do RPC. Confira Segurança para obter mais detalhes.

Chamadas assíncronas [ mensagem] não podem usar a segurança RPC porque não há handshake entre o cliente e o servidor. Na verdade, o servidor pode nem estar em execução no momento da chamada. Para acessar os serviços de segurança fornecidos pelo MSMQ (Serviços de Enfileiramento de Mensagens), o aplicativo cliente deve chamar RpcBindingSetAuthInfo para controlar o nível de autenticação e privacidade de suas chamadas ao servidor.

O aplicativo de servidor pode chamar RpcBindingInqAuthClient de dentro de uma chamada de procedimento remoto para determinar o nível de segurança dessa chamada. O mapeamento entre as constantes de segurança RPC e a segurança do MSMQ é mostrado na tabela a seguir.

Nível de segurança RPC Descrição
RPC_AUTHN_LEVEL_NONE A chamada não é autenticada ou criptografada.
RPC_AUTHN_LEVEL_PKT_INTEGRITY A chamada é autenticada usando a segurança do MSMQ.
RPC_AUTHN_LEVEL_PKT_PRIVACY A chamada é autenticada e criptografada à medida que viaja entre a fila do cliente e do servidor.

 

O servidor também pode forçar a autenticação e a criptografia de chamadas chamando RpcServerUseProtseqEpEx e definindo os sinalizadores RPC_C_MQ_AUTHN_LEVEL_NONE, RPC_C_MQ_AUTHN_LEVEL_PKT_INTEGRITY e RPC_C_MQ_AUTHN_LEVEL_PKT_PRIVACY na estrutura RPC_POLICY .