当前位置: 首页 > 知识库问答 >
问题:

无效的签名密钥标识服务器4

潘意
2023-03-14

我在具有 identityserver4 的经过身份验证的应用程序中遇到此异常:

安全令牌验证签名异常: IDX10503: 签名验证失败。已尝试的密钥: 'Microsoft.IdentityModel.Tokens.RsaSecurityKey , KeyId: '.捕获的异常:“”。标记: '{“alg”:“RS256”,“典型值”:“JWT”}.{“nbf”:1501510053,“exp”:1501510353,“iss”:“http://localhost:5000”,“aud”:“clientId”,“nonce”:“636371068531446271.Nzc2YZRJGMTN2M0Ny00MGZiLWI3NTQtN2Q2Q2NWIXZGM5MWUYODY2MGE5NGE5NTGTYMZNS00YWJMWWYMWYMWYDNJCWMJYTKMJYTLKYWJK”,“iat ”:1501510053,“c_hash”:“teGUAAIvU0EY9L1WzjfI2Q”,“sid”:“c870b6184744290472b157ce5992f8e0”,“sub”:“a3915666-8586-476b-9166-b5b183af609e”,“auth_time”:1501508734,“idp”:“local”,“amr”:[“pwd”]}'。

目前,我在identity server的登录凭据中没有可使用的证书。所以我试着写这段代码,有时会成功,但我确信这是错的。有人有一步一步如何使用没有. pfx证书的SignInCredentials?

var signinkey = new RsaSecurityKey(RSA.Create());

        var signingCredentials = new SigningCredentials(signinkey,
            SecurityAlgorithms.RsaSha256);

        // Adds IdentityServer
        services.AddIdentityServer()
            .AddSigningCredential(signingCredentials)
...

共有1个答案

杜志
2023-03-14

services.AddIdentityServer().AddDeveloperSigningCredential()

这将在第一次启动时为您创建一个随机的RSA密钥对,并将其缓存在磁盘上。

 类似资料:
  • 我试图使用javascript创建ECDSA算法的密钥对,签名消息,然后在服务器端验证它(使用Java)。 示例javascript代码: 例如: 我做错了什么?

  • 我曾经处理过存储在Azure Key Vault中的秘密,但这是第一次使用证书进行身份验证,而不是使用秘密。 我有一个存在Azure密钥库里的证书。我想使用此证书与Azure AD应用程序进行身份验证。 我知道,对于存储在Azure密钥库中的秘密,我们可以使用@microsoft.keyvault(secreturi='secret identifier')通过应用程序设置在Azure函数中引用它

  • 我想验证某个有效负载的签名,给定一个公共ECDSA密钥,并且我事先知道签名是正确的。我想使用密码学python库,但问题是,我无法使验证工作并且总是得到异常,即使签名应该是正确的。 这是我当前使用的代码片段。公钥是基64编码和DER格式(所以没有等),签名也是基64编码的。该消息是一些字符串形式的 JSON 数据,没有空格。 这将导致以下错误。 我知道签名肯定有效的原因是因为我尝试了另一个名为ec

  • 我是API开发的新手,但通过阅读我能找到的所有文章,我成功地实现了菲尔·斯特金和克里斯·卡塞格斯的CI REST服务器,但有一个答案让我无法回答,从以下问题:CodeIgniter REST API库Ajax PUT抛出403禁止和如何在我自己的Codeigniter控制器中生成API密钥。 我已经按照第一个问题的公认答案中的建议将“boguskey”添加到数据库中,但是我对这里的安全性感到困惑。

  • 我已经从Firebase中导入的Google项目中删除了名为Server key(由Google Service自动创建)的api密钥。 现在,项目设置中的字段服务器密钥-云消息传递为空。我也不能发送通知,我从服务器上得到一个未经授权的401错误。 我能做什么?