【问题标题】:Biztalk send port cannot find certificateBiztalk 发送端口找不到证书
【发布时间】:2015-10-18 02:13:31
【问题描述】:

下午好, 我在尝试使用 BizTalk 发送端口与 Web 服务通信时遇到以下错误:

"System.InvalidOperationException: Cannot find the X.509 certificate using the following search criteria: StoreName 'My', StoreLocation 'CurrentUser', FindType 'FindByThumbprint'

发送端口配置为“WCF-WShttp”类型、“传输”安全模式、“证书”凭证类型。

我有一个自签名证书,其指纹值与 bizTalk 配置对话框中显示的指纹值相同。我检查了文件显示正确的指纹并且它没有过期。

  • 我已尝试在以下所有商店中安装它: “当前用户”:个人、受信任的发布者、受信任的人、受信任的 CA “本地计算机”:个人、受信任的发布者、受信任的人、受信任的 CA。

  • 当我转到 BizTalk 管理控制台中的 wcf 发送端口配置时,它允许我浏览可用的证书。我们的证书出现并让我选择它。

  • 我确保将 biztalk 的服务帐户添加到证书权限中。

有什么建议吗?

谢谢!

【问题讨论】:

    标签: wcf security biztalk


    【解决方案1】:

    客户端证书需要安装在 BizTalk 主机用户帐户证书“个人存储”中,还要确保任何根证书(如果有)在受信任的存储中,然后在适配器配置中进行设置。

    【讨论】:

    • 我使用了 MMC,为服务帐户添加了一个管理单元,选择了“BiztalkServerApplication”(这是它允许我选择的唯一主机实例),然后将它添加到每个似乎合适的商店。我去了发送端口安全选项卡并重新选择了证书。仍然得到同样的东西:(
    • 我注意到 biztalk 管理控制台允许您从当前用户的个人存储中选择证书,但 biztalk 服务帐户将从其个人存储中获取证书。这对我来说似乎是一个错误。您无法从它实际使用的证书列表中进行选择。
    • 如果您在本地进行测试,请尝试使用主机帐户作为您的帐户,然后将证书添加到您的个人存储,然后更改发送端口配置和测试。或者,您应该使用运行主机的用户登录,然后对其进行配置。
    【解决方案2】:

    遵循这些程序应该可以工作。 https://msdn.microsoft.com/en-us/library/gg634534(v=bts.70).aspx。可能需要注意的最重要的事情是您必须使用运行适配器处理程序的主机实例服务的实际帐户登录到服务器。对于自签名证书,我认为您只需将其添加到该帐户的受信任根 CA。

    【讨论】:

    • 在本地计算机和当前用户的个人商店中安装了 .cer 文件,同时登录到 biztalk 服务帐户。我打开 Internet Explorer 并导航到 Web 服务 svc 页面。我收到错误页面“此网站的安全证书有问题”。我尝试单击“继续访问此网站”链接,但收到 403 禁止错误。我认为我有多个问题,但我至少不应该收到“此证书有问题”错误吗?
    【解决方案3】:

    您是否将指纹直接从 mmc 复制到您的 BizTalk 发送端口。 首先尝试将其复制到notepad++并检查是否看到任何特殊字符。

    如果是这种情况,请删除特殊字符,然后将该指纹复制到您的 BizTalk 发送端口。

    【讨论】:

    • 您可以在不输入指纹字符串的 wcf-wshttp 类型中使用 wcf-custom 或 wcf-wshttp 端口类型,您从证书列表中选择并输入它。我看不到让它工作,所以我现在正在尝试 wcf-custom 版本。我一定会小心的。谢谢
    猜你喜欢
    • 1970-01-01
    • 2019-06-23
    • 1970-01-01
    • 2011-01-20
    • 1970-01-01
    • 2010-12-26
    • 1970-01-01
    • 1970-01-01
    • 2023-03-28
    相关资源
    最近更新 更多