向OWINWebneneneba API中的GrantRefreshToken()添加和检索新的post参数的最佳方式



使用刷新令牌获取新JWT的默认请求参数为:grant_type、refresh_token和client_id。

当请求新的刷新令牌时,我需要通过添加新的主体参数来控制声明标识修改。

假设参数由grant_claims命名,它可以包含true或false布尔值。

如何在GrantRefreshToken((重写的方法中获取该自定义参数?

非常感谢

最后,我从这篇文章中找到了答案:

owin-oauth发送附加参数

ValidateClientAuthentication中,我们可以添加额外的参数

public override Task ValidateClientAuthentication(OAuthValidateClientAuthenticationContext context)
{
// other code ...
var grantClaims = context.Parameters.Get("grant_claims");
// other code ...
context.OwinContext.Set<string>("grant_claims", grantClaims);
// other code ...
}

然后获取身份验证和刷新令牌方法中的值

// auth
public override async Task GrantResourceOwnerCredentials(OAuthGrantResourceOwnerCredentialsContext context)
{
var grantClaims = context.OwinContext.Get<string>("grant_claims");
}
//refresh token
public override async Task GrantRefreshToken(OAuthGrantRefreshTokenContext context)
{
var grantClaims = context.OwinContext.Get<string>("grant_claims");
}

相关内容

  • 没有找到相关文章

最新更新