安装 WCF 适配器的证书
WCF 适配器可以利用公钥基础结构 (PKI) 数字证书来进行消息加密和解密、消息签名和验证(不可否认性)以及客户端验证。 本主题介绍将数字证书用于 WCF 适配器的不同证书使用方案和配置选项准则。
WCF 接收位置的证书使用方案
下表显示如何安装 WCF 接收位置的证书。
证书使用 | 用户上下文 | 证书存储位置 | 证书类型 | 安装证书的时间 |
---|---|---|---|---|
解密和签名取决于接收位置的安全设置。 | 与接收处理程序关联的主机实例使用的帐户 | 登录到每台运行BizTalk Server的计算机,该计算机将接收位置作为每个主机实例服务帐户进行托管,并将服务证书导入到“当前用户”\“个人” (“我的) 存储。 | 私人证书 | 在以下配置中指定 服务证书 - 指纹 属性的值: - WCF-BasicHttp 接收位置 的安全模式 属性设置为 Message。 - 对于 TransportCredentialOnly 安全模式,WCF-BasicHttp 接收位置的传输客户端凭据类型属性设置为 Certificate。 - 对于消息安全模式,WCF-WSHttp 接收位置的消息客户端凭据类型属性设置为 None、Certificate 或 UserName。 - 对于传输安全模式,WCF-NetTcp 接收位置的传输客户端凭据类型属性设置为 None 或 Certificate。 - 对于消息安全模式,WCF-NetTcp 接收位置的消息客户端凭据类型属性设置为 None、UserName 或 Certificate。 - 对于 TransportWithMessageCredential 安全模式,WCF-NetTcp 接收位置的消息客户端凭据类型属性设置为 Windows、UserName 或证书。 - WCF-NetMsmq 的安全模式属性设置为“消息”或“两者”。 |
客户端身份验证 | 不可用 | 登录到每台运行BizTalk Server以管理员身份托管接收位置的计算机,并将客户端 X.509 证书的 CA 证书链导入计算机的“受信任的根证书颁发机构”证书存储,以便客户端可以对此接收位置进行身份验证。 | 客户端 X.509 证书的 CA 证书链 | 将客户端 X.509 证书的 CA 证书链安装到下列配置中的“受信任的根证书颁发机构”证书存储中。 - WCF-BasicHttp 接收位置 的“消息客户端凭据类型 ”或“ 传输客户端凭据类型 ”属性设置为“ 证书”。 - WCF-WSHttp 接收位置 的“消息客户端凭据类型 ”或“ 传输客户端凭据类型 ”属性设置为“ 证书”。 - WCF-NetTcp 接收位置 的“消息客户端凭据类型 ”或“ 传输客户端凭据类型 ”属性设置为“ 证书”。 - WCF-NetMsmq 接收位置 的消息客户端凭据类型 或 MSMQ 身份验证模式 属性设置为 “证书”。 |
注意
由于标准 WCF 接收适配器使用 ChainTrust 模式来验证客户端证书,因此必须为客户端 X.509 证书安装 CA 证书链。 可以使用 WCF-Custom 或 WCF-CustomIsolated 适配器来限制此默认行为。
注意
对于独立的 WCF 接收适配器,您需要在独立主机实例和相应应用程序池之间匹配用户帐户。 有关 BizTalk 独立主机的详细信息,请参阅 启用 Web 服务。
注意
对于 WCF-Custom 和 WCF-CustomIsolated 接收位置,要安装的证书的用户上下文、证书存储位置和证书类型因 serviceCredentials 和 clientCredentials 行为元素设置而异。
注意
如果接收位置使用 Endpoint Identity 属性的证书元素,则还必须将已发布服务标识的证书安装到 Endpoint Identity 属性中指定的证书存储中。
注意
除了使用主机实例服务帐户或管理员帐户登录到该计算机外,您还可使用适当的帐户通过“Run As”命令执行相同的操作。
WCF 发送端口的证书使用方案
下表显示如何安装 WCF 发送端口的证书。
证书使用 | 用户上下文 | 证书存储位置 | 证书类型 | 安装证书的时间 |
---|---|---|---|---|
客户端身份验证 | 与发送端口相关联的主机实例使用的帐户 | 登录到每台运行BizTalk Server的计算机,该计算机将作为每个主机实例服务帐户托管发送端口,并将客户端证书导入到“当前用户”\“个人” (“我的) 存储”。 | 私人证书 | 在以下配置中指定 客户端证书 - 指纹 属性的值: - WCF-BasicHttp 发送端口 的“消息客户端凭据类型 ”或“ 传输客户端凭据类型 ”属性设置为“ 证书”。 - WCF-WSHttp 发送端口 的“消息客户端凭据类型 ”或“ 传输客户端凭据类型 ”属性设置为“ 证书”。 - WCF-NetTcp 发送端口 的“消息客户端凭据类型 ”或“ 传输客户端凭据类型 ”属性设置为“ 证书”。 - WCF-NetMsmq 发送端口 的消息客户端凭据类型 或 MSMQ 身份验证模式 属性设置为 “证书”。 |
服务验证、签名验证和加密取决于发送端口的安全设置 | 不可用 | 登录到运行BizTalk Server(以管理员身份托管发送端口)的每台计算机,并将服务证书导入到本地计算机\ (AddressBook) 存储的其他人。 您还必须将服务证书的 CA 证书链安装到该计算机的“受信任的根证书颁发机构”证书存储中。 | - 服务公共证书 - 服务证书的 CA 证书链 |
在以下配置中指定 服务证书 - 指纹 属性的值: - WCF-BasicHttp 发送端口 的“消息客户端凭据类型 ”或“ 传输客户端凭据类型 ”属性设置为“ 证书”。 - 清除“协商服务凭据”选项时,WCF-WSHttp 发送端口的消息客户端凭据类型属性设置为“无”、“用户名”或“证书”。 - WCF-NetMsmq 发送端口的安全模式设置为“消息”或“两者”。 |
服务验证、签名验证和加密取决于发送端口的安全设置 | 不可用 | 登录到每台运行BizTalk Server以管理员身份托管发送端口的计算机,并将客户端 X.509 证书的 CA 证书链导入计算机的“受信任的根证书颁发机构”证书存储,以便向此发送端口对服务进行身份验证。 | 服务证书的 CA 证书链 | 如果未显式指定服务证书的服务证书 - 指纹 属性,请在以下配置中将服务 X.509 证书的 CA 证书链安装到受信任的根证书颁发机构证书存储: - WCF-BasicHttp 发送端口的安全模式设置为 TransportWithMessageCredential。 - WCF-WSHttp 发送端口的安全模式设置为 TransportWithMessageCredential。 - WCF-NetTcp 发送端口 的安全模式 设置为 TransportWithMessageCredential。 - WCF-NetTcp 发送端口的 传输客户端凭据类型 属性设置为 None 或 Certificate。 - WCF-NetTcp 发送端口 的消息客户端凭据类型 属性设置为 None、 UserName 或 Certificate。 |
注意
由于标准 WCF 发送适配器使用 ChainTrust 模式来验证服务证书,因此必须为服务 X.509 证书安装 CA 证书链。 您可使用 WCF-Custom 或 WCF-CustomIsolated 适配器来更改此默认行为。
注意
对于 WCF-Custom 和 WCF-CustomIsolated 发送端口,要安装的证书的用户上下文、证书存储位置和证书类型因 serviceCredentials 和 clientCredentials 行为元素设置而异。
注意
如果发送端口使用 Endpoint Identity 属性的证书元素,则还必须将预期服务标识的证书安装到 Endpoint Identity 属性中指定的证书存储中。
注意
除了使用主机实例服务帐户或管理员帐户登录到该计算机外,您还可使用适当的帐户通过“Run As”命令执行相同的操作。
显示证书管理控制台
若要显示“本地计算机”和“当前用户”的“证书管理控制台”界面,请按下列步骤操作:
单击 “开始”,单击“ 运行”,键入 MMC,然后单击“ 确定 ”打开 Microsoft 管理控制台。
在“ 文件 ”菜单上,单击“ 添加/删除管理单元 ”以显示“ 添加/删除管理单元 ”对话框。
单击“ 添加” 以显示“ 添加独立管理单元 ”对话框。
从管理单元列表中选择“ 证书 ”,然后单击“ 添加”。
选择“ 计算机帐户”,单击“ 下一步”,然后单击“ 完成”。 这将为“本地计算机”添加“证书管理控制台”界面。
确保仍从管理单元列表中选择“ 证书 ”,然后再次单击“ 添加 ”。
选择 “我的用户帐户”,然后单击“ 完成”。 这将为“当前用户”添加“证书管理控制台”界面。
注意
这将为您当前使用的登录帐户显示“证书管理控制台”。 如果您需要为某一服务帐户将证书导入个人存储,则应首先使用该服务帐户的凭据登录。
在“独立管理单元”对话框中单击“关闭”。
在“添加/删除管理单元”对话框中单击“确定”。