此问题可能由于签名密钥在应用程序中的不同配置而导致。在修改用户个人资料后,回调将尝试使用新的令牌以更新用户状态。如果访问令牌的键和签名密钥不匹配,则会出现此错误。
要解决此问题,请确保在应用程序中的“Startup.cs”文件中配置正确的签名密钥。应该使用相同的密钥来签名访问和刷新令牌。以下是示例代码:
services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme)
.AddJwtBearer(options =>
{
options.Authority = "https://.b2clogin.com/.onmicrosoft.com/B2C_1A_signup_signin/";
options.Audience = "";
options.TokenValidationParameters = new TokenValidationParameters()
{
ValidIssuer = "https://.b2clogin.com/.onmicrosoft.com/B2C_1A_signup_signin/",
IssuerSigningKey = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(""))
};
});
确保将替换为用于签名访问和刷新令牌的相同密钥。此更改可能需要重新运行应用程序才能生效。