gpt4 book ai didi

c# - 使用证书调用服务:Error - "Keyset does not exist"

转载 作者:行者123 更新时间:2023-12-02 09:40:27 26 4
gpt4 key购买 nike

我目前正在尝试访问第三方提供的服务。他们向我们颁发了 PKCS 格式的证书。证书安装在本地计算机 - 受信任的根目录中。

我们的应用程序在运行时找到此证书并将其发送到由第 3 方托管的身份验证 URL,在该 URL 中对其进行身份验证并颁发 SAML token 。然后,它用于调用执行我们所需功能的实际服务。

当我通过开发计算机 [Windows 7] 中的服务引用运行使用此服务的应用程序时,一切顺利。

现在的痛点是,由于我们有一个要进行测试的 Citrix 环境,因此我们会收到如下错误

Exception in METHOD: SOAP security negotiation with "Service URL" for target failed. Inner Exception: System.Security.Cryptography.CryptographicException: Keyset does not exist.

任何人都可以帮助我解决此问题,因为我无法在本地重现它,并且它仅发生在服务器操作系统中,我不确定是否是权限问题或某些代码问题。

最佳答案

此问题可能有两个原因:

  1. 证书没有私钥。
  2. 您的进程运行的用户没有读取私钥的权限。

由于您已经在开发环境中启动并运行了此功能,因此我们假设原因是 2。

如果您还不知道,您需要确定您的进程在测试服务器上运行的用户帐户。然后在测试服务器上打开MMC和add the Certificates snap-in 。找到证书,右键单击并选择所有任务 | 管理私钥...并授予用户读取权限。

阅读更多相关内容:

X509Certificate - Keyset does not exist

CryptographicException 'Keyset does not exist', but only through WCF

Service failure with CryptographicException – Keyset does not exist

Wcf: Keyset does not exist

关于c# - 使用证书调用服务:Error - "Keyset does not exist",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43012948/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com