我正在一个构建在ASP WebForms中的SAML服务提供方项目中使用kentor authservices。在开发机器上它运行良好,但是当我将其部署到生产服务器(Windows 2012 R2,IIS 8)时,X509Certificates.X509Utils._LoadCertFromFile调用会抛出异常:“指定的网络密码不正确。”
只有证书(pfx)没有密码,并且它所在的位置没有任何特殊的安全保护,但是为了确保,我尝试将“所有人”暂时赋予文件夹完全访问权限。
相关的web.config部分如下:
尽管我认为这与代码无关,因为在开发机器上可以正常工作——可能是证书方面的一些服务器端问题?非常感谢任何帮助。
只有证书(pfx)没有密码,并且它所在的位置没有任何特殊的安全保护,但是为了确保,我尝试将“所有人”暂时赋予文件夹完全访问权限。
相关的web.config部分如下:
<serviceCertificates>
<add fileName="~/App_Data/M_SSO_SP.pfx"/>
</serviceCertificates>
尽管我认为这与代码无关,因为在开发机器上可以正常工作——可能是证书方面的一些服务器端问题?非常感谢任何帮助。
MachineKeySet
标志加载证书,在它上线的这些年里,我没有看到任何问题。 - Anders Abel\Samples\SampleAspNetCore2ApplicationNETFramework\Startup.cs
中的options.SPOptions.ServiceCertificates.Add(new X509Certificate2("Sustainsys.Saml2.Tests.pfx"));
- 我不得不将其更改为options.SPOptions.ServiceCertificates.Add(new X509Certificate2("Sustainsys.Saml2.Tests.pfx", "", X509KeyStorageFlags.MachineKeySet));
. - jaycer