小编Far*_*dur的帖子

获取 System.ObjectDisposeException:无法访问已处置的对象。对象名称:“RSA”。在 Identity Server 6 中使用手动密钥管理时

当我尝试对 duende 身份 6 使用手动密钥管理时,我收到从 api“无法访问已处置对象。对象名称:'RSA'”返回的错误。当我尝试从代码创建 RSA 参数时,它确实有效,但是它不适用于私钥和公钥。

请告诉我下面的代码有什么问题。另外,如果有人能告诉我除此之外的任何其他方法。

Program.cs 中的代码

// this will return signing credentials
SigningCredentials GetSigningCredentials()
{
    var p = @"MIICdQIBADANBgkqhkiG9w0BAQEFAASCAl8wggJbAgEAAoGBAKj/nCpvB71XiFgH
3ykjGU/8SutC680yQjqQdEGh/SDxPAncW5SfavcFSt0K/1UuyyXNc5o9RIcns2rE
4W49T0T4VIP4WhVkAQEvBc4NeLX+o9W3pj6A3dNb+M+2VzZGcFPRtkypNtgxsNJ8
s0b4pmGP9zeMzCkd3UJgCLlZOdz/AgMBAAECgYAzHUywkPB4VjdI2OioWpNXW+mV
CqKjZ6YcbICdMU+MXSpZmSqh4y3JFPK1tJPRwdtzzZY/enR1pI5hprbATw7gQUK1
1SxRIhyC70DSuX6C4dSLQBnXCUzcWokY1IB+iyftHamrtVdTK2IBS7Q9iMAUX49o
XcmDsn8vbAze6mg4YQJBAOCPDcELQtZeZAhEp7Zy4Ks2MGt3YASoDySPrJxCRn5x
WvBynmS+pDbptY7bnV9tk9pIBfxXgooUwbjqGT5WoTcCQQDAqRYhYFtk+8l8Yjmo
Fhr859U6wnjhq9BCzwtRVzPfkpYjOUeHaEJozEUtAKN2y68Aq9zNDdq6SL+9QIcP
MqZ5AkAYsAF+GKPXd3c6Cno5t7V1fTajifM3b9aCWX1LjIm9eu7ZgnBheQgKtXTt
aL2LcTuRAtwNmv1R+ug1UR9HWDTPAkAJHDXCsEbCGLHnYtGtJBZ0nRXVKHsE2NYJ
QrcbSo9WZB0bX0sFmSWCxR4EScJxDKKi2n2faKdOJcCDV3jLfC6pAkBSn5HYh1Wm
ycOUmv6MANXgrmUnmhD23hAMQeJmU4Rs6mzVXCwlJUO3EvgkONjtOUh6NFM9G2gJ
Y1AmxhQIrusw";
     
    var privateKey = p.ToByteArray();
    using RSA rsa =  RSA.Create();
    RSAParameters rsaKeyInfo = rsa.ExportParameters(false);
    rsa.ImportPkcs8PrivateKey(privateKey, out _);
    var signingCredentials = new SigningCredentials(new RsaSecurityKey(rsa), SecurityAlgorithms.RsaSha256)
    {
        CryptoProviderFactory = new CryptoProviderFactory { CacheSignatureProviders = false }
    };

    return signingCredentials;
}

builder.Services.AddIdentityServer(options =>
{

    options.LicenseKey =
    "xyz"; …
Run Code Online (Sandbox Code Playgroud)

c# .net-6.0 duende-identity-server

3
推荐指数
1
解决办法
752
查看次数

标签 统计

.net-6.0 ×1

c# ×1

duende-identity-server ×1