我正在尝试登录证书(OpenIddict),但在尝试使用指纹时出现错误:
options.AddSigningCertificate(Configuration["Certificate"]/* db b9 12 .... 22 */);
和错误:
应用程序启动异常:System.Security.Cryptography.CryptographicException:OpenCSP 失败,错误代码为 2148073494。
在这一行:
app.UseOpenIddict();
如果我尝试使用 X509Certificate2 我也会收到错误:
var cert = new X509Certificate2(Configuration["Certificate"]/*path to file.cer*/);
options.AddSigningCertificate(cert);
和错误:
System.InvalidOperationException:证书不包含所需的私钥。
在同一行app.UseOpenIddict();。
我使用的证书与用于 https 协议的证书相同。这个可以吗?我的活动令牌随机消失(尝试刷新令牌时我得到 invalid_token )。我发现如果AddEphemeralSigningKey使用会发生这种情况,因为当连接断开时(由于 IIS 空闲超时),所有令牌都丢失了。因此,我正在尝试使用AddSigningCertificate.
还有其他方法吗?谁能告诉我,证书有什么问题?谢谢你。
我正在使用 ASP.NET Core 1.1.1。
我为 .cer 文件添加了 IIS 用户的读取权限。
