2017-12-28 22 views
0

(SQL Serverデータベースに基づく)カスタムユーザーストアでIdentityServer4を使用しています。 すべてのリクエストに正しいアクセストークンがあることを確認するために、アクセストークンを保存する方法を知りたい。アクセストークンの保存(Identityserver4)

私はデフォルトの運用ストアを使用しようとしましたが、リフレッシュトークンと認証コードを保存するだけです。

ありがとうございます。

答えて

2

あなたが正しく理解していれば、ユーザーリクエストを認証できるようにサーバー側にアクセストークンを保存する必要があります。あなたはを返します。は、IdentityServerがこれを実行したので、サーバー側にアクセストークンを格納する必要があります。アイデンティティサーバーでapi(リソースサーバー)を正しく設定した場合、必要なのはapiコントローラに[Authorize]を追加するだけです(.netコアWeb APIを使用しているようです)。 IdentityServerのドキュメントとサンプルプロジェクトの多くの例はGithubにあります。

一方、トークンが期限切れになるまでユーザーを再度認証する必要がないため、クライアント側にアクセストークンを格納する必要があります。これはあなたが使用する助成金の種類によって異なります。これは、あなたがResourceOwnerPassword付与を使用する場合に特に当てはまります。クライアント側がSPA(Angularなど)の場合、通常のアクセストークンはブラウザのローカルストレージに格納されます。各クライアント要求に対して、すでにトークンがあるかどうかをチェックし、トークンが期限切れでないことをチェックします。

また、アクセストークンの期限が切れたときにユーザーが自動的に再認証されるように、さまざまな権限でリフレッシュトークンをサポートすることもできます。

関連する問題