Identity Server 4 - IDX10630:隐藏了PII

问题描述 投票:2回答:1

我是使用加密和rsa令牌的新手,我试图让IDentityServer4不使用开发人员签名,而是我自己的。这是我到目前为止所尝试的:

var keyInfo = new RSACryptoServiceProvider().ExportParameters(true);
var rsaSecurityKey = new RsaSecurityKey(new RSAParameters
{
    D = keyInfo.D,
    DP = keyInfo.DP,
    DQ = keyInfo.DQ,
    Exponent = keyInfo.Exponent,
    InverseQ = keyInfo.InverseQ,
    Modulus = keyInfo.Modulus,
    P = keyInfo.P,
    Q = keyInfo.Q
});

services.AddIdentityServer()
.AddSigningCredential(rsaSecurityKey)
.AddInMemoryPersistedGrants()
.AddInMemoryIdentityResources(Config.GetIdentityResources())
.AddInMemoryApiResources(Config.GetApiResources())
.AddInMemoryClients(Config.GetClients())
.AddAspNetIdentity<User>();

但是,当我运行Identity Server4并且我被重定向到从另一个网站登录页面时,我收到以下错误:

IDX10630:用于签名的'[PII is hidden]'不能小于'[PII is hidden]'位。 KeySize:'[PII隐藏]'。参数名称:key.KeySize

我不得不承认,我整个周末一直在这,试图弄清楚如何使用SigningCredentials,我不确定我上面做错了什么。

c# rsa identityserver4 signing
1个回答
12
投票

您可以通过在Startup类中向Configure()添加以下内容来查看开发中的更多详细信息:

if (env.IsDevelopment())
{
     IdentityModelEventSource.ShowPII = true; 
}
最新问题
© www.soinside.com 2019 - 2024. All rights reserved.