Freigeben über


MSMQ Security Services

Synchrone RPC-Nachrichten können alle Sicherheitsfeatures verwenden, die in der RPC-Laufzeit verfügbar sind. Weitere Informationen finden Sie unter Security.

Asynchrone [ Nachrichten] -Aufrufe können keine RPC-Sicherheit verwenden, da kein Handshake zwischen Client und Server vorhanden ist. Tatsächlich wird der Server zum Zeitpunkt des Anrufs möglicherweise nicht einmal ausgeführt. Um auf die von Message Queuing Services (MSMQ) bereitgestellten Sicherheitsdienste zuzugreifen, sollte die Clientanwendung RpcBindingSetAuthInfo- aufrufen, um die Authentifizierungs- und Datenschutzstufe für ihre Aufrufe an den Server zu steuern.

Die Serveranwendung kann RpcBindingInqAuthClient- innerhalb eines Remoteprozeduraufrufs aufrufen, um die Sicherheitsstufe für diesen Aufruf zu ermitteln. Die Zuordnung zwischen RPC-Sicherheitskonstanten und MSMQ-Sicherheit ist in der folgenden Tabelle dargestellt.

RPC-Sicherheitsstufe Beschreibung
RPC_AUTHN_LEVEL_NONE Der Anruf ist nicht authentifiziert oder verschlüsselt.
RPC_AUTHN_LEVEL_PKT_INTEGRITY Der Aufruf wird mithilfe der MSMQ-Sicherheit authentifiziert.
RPC_AUTHN_LEVEL_PKT_PRIVACY Der Anruf wird authentifiziert und verschlüsselt, während er zwischen Client und Serverwarteschlange wechselt.

 

Der Server kann auch die Aufrufauthentifizierung und Verschlüsselung erzwingen, indem RpcServerUseProtseqEpEx- aufgerufen und die RPC_C_MQ_AUTHN_LEVEL_NONE, RPC_C_MQ_AUTHN_LEVEL_PKT_INTEGRITY und RPC_C_MQ_AUTHN_LEVEL_PKT_PRIVACY Flags in der RPC_POLICY-Struktur festgelegt werden.