确定对话安全模式类型

会话所用的对话安全模式类型取决于 BEGIN DIALOG CONVERSATION 语句中的选项、对服务的远程服务绑定的设置以及起始服务的所有者是否拥有证书。对于每个新对话,SQL Server 都将在 sys.remote_service_bindings 目录视图中查找目标服务的远程服务绑定。

下表列出了每种有效组合的对话安全模式类型。请注意,如果存在远程服务绑定,则无论 BEGIN DIALOG CONVERSATION 语句中的设置如何,对话都会使用加密。

    无远程服务绑定 远程服务绑定中 ANONYMOUS = ON 远程服务绑定中 ANONYMOUS = OFF

服务所有者拥有证书

ENCRYPTION = ON

对话失败

匿名安全模式

完全安全模式

服务所有者拥有证书

ENCRYPTION = OFF

无对话安全模式

匿名安全模式

完全安全模式

服务所有者没有证书

ENCRYPTION = ON

对话失败

匿名安全模式

对话失败

服务所有者没有证书

ENCRYPTION = OFF

无对话安全模式

匿名安全模式

对话失败

  • 对话失败
    SQL Server 没有用于提供请求的安全模式所需的信息。Service Broker 将结束会话并将错误消息置于起始服务的队列中。
  • 无对话安全模式
    SQL Server 不提供该对话的对话安全模式。代表起始服务的操作在目标数据库中作为 public 运行。不为此对话加密消息。但是请注意,传输安全模式可能加密网络上的消息。
  • 匿名安全模式
    SQL Server 使用匿名安全模式。对于此对话,将对实例外部的消息进行加密。由于目标服务无法验证起始服务的标识,因此代表起始服务的操作在目标数据库中作为 public 运行。
  • 完全安全模式
    SQL Server 使用完全安全模式。对于此对话,将对实例外部的消息进行加密。代表起始服务的操作在目标数据库中以指定的用户身份运行。

请参阅

任务

如何将起始服务配置为使用匿名对话安全模式 (Transact-SQL)
如何将起始服务配置为使用完全对话安全模式 (Transact-SQL)
如何将目标服务配置为使用匿名对话安全模式 (Transact-SQL)
如何将目标服务配置为使用完全对话安全模式 (Transact-SQL)
如何为本地服务配置权限 (Transact-SQL)

概念

Service Broker 通信协议

帮助和信息

获取 SQL Server 2005 帮助