身份验证级别协商

客户端和服务器都必须参与身份验证,并且每一方都表示希望执行某种级别的身份验证。 在调用开始时,身份验证级别由双方协商,选择适当的服务,并且调用经过身份验证并继续(根据所选的身份验证级别)进行身份验证。 在客户端和服务器之间协商的身份验证级别确定为最大值(客户端首选项服务器首选项)。 这意味着服务器始终可以决定它熟悉的最小身份验证级别;也就是说,可以从服务器管理上指定身份验证。

客户端指定它希望在与任何 COM 应用程序一样在特定级别执行身份验证。 客户端身份验证级别可以如下所示:

  • 每个客户端计算机,使用 DCOMCNFG 或组件服务管理工具设置的计算机范围的 COM 身份验证级别。
  • 根据管理方式,使用 DCOMCNFG 或使用组件服务管理工具(如果客户端应该是 COM+ 应用程序)。
  • 按客户端以编程方式处理 CoInitializeSecurity
  • 随时以编程方式使用 CoSetProxyBlanket

COM+ 服务器应用程序通过使用组件服务管理工具(或管理脚本)以管理方式指定身份验证级别。

协商调用的身份验证按以下顺序进行:

  1. 身份验证级别选择为 MAX(客户端服务器)。
  2. 身份验证协议协商。
  3. 服务器对客户端标识进行身份验证。
  4. (可选)客户端根据身份验证协议对服务器标识进行身份验证。
  5. 方法调用与所选身份验证级别进行通信。

客户端身份验证