使用app.UseOpenIdConnectAuthentication在asp.net核心中对OpenAM Forgerock进行Jwt验证失败

时间:2016-12-16 09:56:53

标签: c# asp.net openid jwt

我有一个asp.net核心网站,使用ForgeRock的OpenAM进行oicd身份验证。成功登录后,我从JWT验证中收到以下错误:

  

SecurityTokenInvalidSignatureException:IDX10503:签名验证   失败。钥匙尝试了:

     

' Microsoft.IdentityModel.Tokens.RsaSecurityKey,KeyId:   zhBofbZw + jkZZjXs28fGfzxZgM8 =&#39 ;.例外情况发生了:''。令牌:   ' {" ALG":" HS256""典型值":" JWT"} {" at_hash&#34。 ;:" afZ0syNpXAt2va1x0E6OcA""子":" XXXXX"" auditTrackingId":" 16cd7126-5743-4f65-8c8d- 541c4446a9f9-14566"" ISS":" https://XXXXXXXX.com:443/openam/oauth2"" tokenName":" id_token"&# 34;随机数":" 636172618434756181.MWFlOWRmYjUtNWRhNS00OTdmLWE2NTAtODVhMDQxYjRkY2U5ZTJmZTA0NzMtM2M0Yy00OGZmLTk1MDItMjZhNThjZTQ5NTBm"" AUD":" OIDC-testapi-数学"" c_hash":& #34; L0K_9odAoeKN0xl9n-_v-Q"" org.forgerock.openidconnect.ops":" fb310afa-02a6-47ba-B604-d75e44389428"" AZP&# 34;:" OIDC-testapi-数学"" auth_time":1481665062,"境界":" /"" EXP":1481668675," tokenType":" JWTToken"" IAT":1481665075}'

(我删除了明确的发布网址和子网站)

这里有什么奇怪的 - 被捕的例外是空的。我在控制台程序中写了一个小的repro同样的错误。

我在方法

中的 JwtSecurityTokenHandler.cs(版本5.1.0.0)中发现第780行

private bool ValidateSignature(byte[] encodedBytes, byte[] signature, SecurityKey key, string algorithm, TokenValidationParameters validationParameters)

失败。

有什么想法吗? 谢谢托尔斯滕

0 个答案:

没有答案