0

ソース コード サンドボックス Web サーバーから、リフレッシュ トークンは次のように行われました。

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 に答える