【发布时间】:2022-06-29 16:33:26
【问题描述】:
我得到了下一个错误:
IDX10501:签名验证失败。无法匹配键:
孩子:'System.String'。
捕获的异常:
'System.Text.StringBuilder'。
令牌:'System.IdentityModel.Tokens.Jwt.JwtSecurityToken'。
在 Microsoft.IdentityModel.Tokens.InternalValidators.ValidateLifetimeAndIssuerAfterSignatureNotValidatedJwt(SecurityToken securityToken, Nullable1 notBefore, Nullable1 expires, String Kid, TokenValidationParameters validationParameters, StringBuilder exceptionStrings)
在 System.IdentityModel.Tokens.Jwt.JwtSecurityTokenHandler.ValidateSignature(字符串令牌,TokenValidationParameters 验证参数)
在 System.IdentityModel.Tokens.Jwt.JwtSecurityTokenHandler.ValidateToken(字符串令牌,TokenValidationParameters 验证参数,SecurityToken 和验证令牌)
在 Microsoft.AspNetCore.Authentication.JwtBearer.JwtBearerHandler.HandleAuthenticateAsync()
我在带有 keycloak 的 api 上使用 Net 6,我的本地配置是 我在 RS256 上有一个公共孩子,但我不知道如何将它添加到 JwtBearer 配置中,我是新手
我尝试添加 appSettings 之类的
所有这些都在开发选项中,我从 keycloak 领域获得了密钥
【问题讨论】:
-
与我的问题类似。您似乎没有使用 AddOpenIdConnect 方法,尽管并未显示您的所有代码
标签: c# authentication jwt keycloak .net-6.0