1

私たちの OAuth サーバーは、実際に保護されたリソースを処理するサーバーから分離されます。つまり、それぞれが保護されたリソースを保持するいくつかの異なるシステムの真ん中に置かれます。

たとえば、ログイン ページはいずれかのシステムにあります。

あるシステムで認証されたユーザーが別のシステムに移動する場合、どのような手順が必要ですか? 認証されているのでそのまま通過するはずですが、このシナリオで OAuth は何を行い、何を要求するのでしょうか?

ありがとうございました

4

1 に答える 1

1

OAuth は、こ​​のシナリオについて明示的に何も述べていません。しかし、API 設計の観点からは、次のようになります。

  • パスで指定されたさまざまなサービスを持つ 1 つの API エンドポイントを用意します。などhttp://api.example.com/service1_ http://api.example.com/service2_
  • その 1 つのエンドポイントで OAuth と個別のサービスのクエリをバックグラウンドで処理します。

などの透過的な「個別システム」を使用する場合はhttp://service1.example.comhttp://service2.example.comそれが可能です。ただし、OAuth フロー全体を処理するための 1 つのドメインがあり、各 API エンドポイントが OAuth 要求を処理でき、要求を検証するために必要なユーザー データベースとトークン データベースにアクセスできることを確認してください。

例を挙げると、次のことができます。

  1. への OAuth リクエストを受信しhttp://service1.example.comます。
  2. service1ユーザー データベースとトークン データベースにアクセスできる場合は、要求をすぐに確認できます。
  3. または、検証のために要求を OAuth サービスに転送することもできます。
  4. そして、応答の提供に進みます

または私の代替(私はより良いと思います):

  1. OAuth を処理する 1 つの API エンドポイントを持つ
  2. 確認後、バックグラウンドでさまざまなサービスを呼び出します。
于 2013-04-16T06:34:06.147 に答える