0

从源代码沙箱 Webserver 中,刷新令牌是这样完成的:

RefreshTokenProvider = new AuthenticationTokenProvider
{
    OnCreate = CreateRefreshToken,
    OnReceive = ReceiveRefreshToken,
}

private void CreateRefreshToken(AuthenticationTokenCreateContext context)
{
    context.SetToken(context.SerializeTicket());
}

private void ReceiveRefreshToken(AuthenticationTokenReceiveContext context)
{
    context.DeserializeTicket(context.Token);
}

这将创建与访问令牌具有相同生命周期的刷新令牌。

刷新令牌的合适生命周期是什么,以及将其告知 OAuthAuthorizationServer 的建议方式是什么。没有选项,我想知道我是否应该在上面的 createRefreshToken 上下文中在票证上更改它。

4

1 回答 1

3

刷新令牌的合适生命周期是多少

它完全取决于用例。RefreshToken 的生命周期可以基于应用程序的要求。Google oAuth 具有“刷新令牌在用户撤销访问权限之前一直有效”。

将其告知 OAuthAuthorizationServer 的建议方法是什么。

是的,你是正确的方法。您可以在上下文中将其设置为 Tiken。

private void CreateRefreshToken(AuthenticationTokenCreateContext context)
{
    context.Ticket.Properties.ExpiresUtc = new DateTimeOffset(DateTime.Now.AddMonths(2));
    context.SetToken(context.SerializeTicket());
}
于 2013-10-17T08:41:47.193 回答