C# 无法在C中验证Google oAuth JWT#
我正在尝试手动验证JWT令牌,但我没有这样做。这是我的密码C# 无法在C中验证Google oAuth JWT#,c#,oauth,jwt,google-oauth,C#,Oauth,Jwt,Google Oauth,我正在尝试手动验证JWT令牌,但我没有这样做。这是我的密码 public异步任务GoogleJWT(string jwt,string returnUrl=null) { returnUrl=returnUrl??Url.Content(“~/”); if(string.IsNullOrEmpty(jwt)) { 返回重定向到操作(“注册电子邮件”); } var参数=新的令牌验证参数 { validisuser=“accounts.google.com”, ValidAudience=“xxx
public异步任务GoogleJWT(string jwt,string returnUrl=null)
{
returnUrl=returnUrl??Url.Content(“~/”);
if(string.IsNullOrEmpty(jwt))
{
返回重定向到操作(“注册电子邮件”);
}
var参数=新的令牌验证参数
{
validisuser=“accounts.google.com”,
ValidAudience=“xxxxxxxxx.apps.googleusercontent.com”,
IssuerSigningKey=新的SymmetricSecurityKey(Encoding.UTF8.GetBytes(“secret”),
ValidateSuersigningKey=true
};
var handler=新的JwtSecurityTokenHandler();
handler.InboundClaimTypeMap.Clear();
var user=handler.ValidateToken(jwt,参数,out-var);
返回视图();
}
它显示了这个错误:
An unhandled exception occurred while processing the request.
SecurityTokenSignatureKeyNotFoundException: IDX10501: Signature validation failed. Unable to match keys:
我不确定发行人或受众是否正确?我没有使用google oauth的经验,但您得到了一个
SecurityTokenSignatureKeyNotFoundException
,我真的怀疑这个IssuerSigningKey=new SymmetricSecurityKey(Encoding.UTF8.GetBytes(“secret”))
是google oAuth令牌的有效设置。您可能是对的,但我找不到正确的设置。请尝试在google上搜索“google oAuth验证令牌”、google文档或此处,单击您问题下的google-oauth2
标记。我已经做了两天了。但我没有找到正确的答案。但我会再做一次。