错误:'ID1039:无法访问证书的私钥

use*_*829 6 c# ssl azure

我在azure中实现ADFS身份验证,但是我面临以下问题:

System.IdentityModel.Services.dll中出现"System.Configuration.ConfigurationErrorsException"类型的异常,但未在用户代码中处理

附加信息:ID1024:配置属性值无效.

物业名称: serviceCertificate

错误:'ID1039:无法访问证书的私钥.确保证书私钥上的访问控制列表(ACL)授予对应用程序池用户的访问权限.

Thumbprint:'df113454dsf1321(这里的值我更改了值)''

当我右键单击证书然后单击所有任务时,它不显示管理私钥的选项并授予IIS用户访问权限.我是如何解决这个问题的.web.config文件内容:

<serviceCertificate>
        <certificateReference x509FindType="FindByThumbprint" findValue="dfdsfdfdf(here I changed the value)" storeLocation="LocalMachine" storeName="My" />
</serviceCertificate>
Run Code Online (Sandbox Code Playgroud)

小智 11

我遇到了同样的问题.修复方法是,允许AppPool用户(NETWORK SERVICE)读取证书私钥.

  • 通过运行mmc.exe打开MMC管理单元.
  • 选择"文件" - >"添加/删除管理单元".选择"证书",然后单击"添加".
  • 选择"计算机帐户".单击完成.点击下一步.
  • 深入查看个人 - >证书.
  • 右键单击您的证书,然后选择"所有任务" - >"管理私钥".
  • 添加NETWORK SERVICE并赋予其"读取"权限.

谢谢,Shivesh

  • 就我而言,IIS_IUSRS是正确的帐户.网络服务无法正常工作. (3认同)
  • 我尝试使用NETWORK SERVICE帐户,但它无效.IIS_IUSRS为我工作. (3认同)