2017-05-21 15 views
0

私は春のアプリケーションでOAuth2を実装していますが、私には1つの質問があります。OAuth 2 - ユーザーを格納するデータソース

私は認可サーバーとリソースサーバーを持っています。私はパスワードの流れを選んだ。

すべて正常に動作します。しかし、どこにユーザーを保管すべきかわかりません。私は2つのデータベースを持っています - 1つは認証サーバー用、もう1つはRestApi - リソースサーバー用です。

この時点で私はrestAPIデータベースにユーザーを保存します。どうして?私はrestAPIでユーザーに関する情報が必要なのでどう思いますか?私の認証サーバーがリソースデータベースへのアクセス権を持っているかどうかは良い方法です...私はわかりません。

私のリソースサーバーは(ユーザートークンを検証するために)認証データベースにアクセスできるため、そのデータベースにユーザーを格納する方が良いでしょうか?

答えて

0

間違いなく、認証サーバーのDBにユーザーを格納する必要があります。ユーザー情報が必要な場合は、認証サービスを呼び出すこともできます(コントローラーをサービスに追加することもできます)。またはリソースサーバーから読み込むトークンに必要な情報を格納するJWTトークンを使用できます。

+0

わかりました。 認証サーバーにAuthServiceを作成し、そのサービスのコントローラーを作成するのが最善の方法です。リソースサーバーからは、httpサービス(例:RestTemplate)を使用して認証サーバーと通信する必要があります。あれは正しいですか? しかし、私はリソースサーバーのauth dbにアクセスできます(私が言ったように - トークンを検証するため)。今私はそれが適切な方法であるかどうか分からない。ユーザーエンティティがauth dbにあるとき、私はauth db datasourceを使ってそれらにアクセスします。私はそれが良い考えではないと思う。 :/ – insectoman

+0

はい。リソースサービスから認証サーバーを呼び出すことができます。 – StanislavL

+0

申し訳ありませんが、私のコメントを更新しました。もう一度それを見ることができますか? – insectoman

関連する問題