0

クライアントがアプリケーションに実際にログインせずに (ユーザーの観点から) アプリケーションにアクセスするためのソリューションを探しています。

これが流れです。

  1. ユーザーは、クライアント アプリケーション APP1 にログインします。

  2. ユーザーが APP1 のリンクをクリックすると、ユーザーはアプリケーション APP2 に移動します。

  3. APP2 は、ユーザーの詳細を検証する必要があります。ユーザーがデータベースで利用できない場合は、ユーザーを作成し、要求されたリソースに転送します。この時点では APP1 がなく、APP2 が UI を引き継ぐことに注意してください。

  4. ユーザーは、ユーザーを APP1 に戻す必要がある APP2 のリンクをクリックできます。

OAuth を使用してこれを実現できますか? 私が見たすべての実装は、ユーザーが両方のアプリでアカウントを持ち、リンクをクリックすると APP2 が認証メカニズムを提供するようなものです。APP1 が許可されると、APP2 からのリソースが要求されます。

私たちのアプリは Java/Spring に基づいています。そして、私はAPP1を制御できません。

4

1 に答える 1

0

アプローチ 1 (複雑)

APP2 は OAuth サーバーを実装します APP1 は、APP1 へのアクセスを提供するユーザーによる認証と確認が成功した後、APP2 によって生成されたトークンに基づいて認証と承認を実装します

アプローチ 2

シングルサインオンの実装

ここで、APP2 はリクエストに Authentication&Authorization ヘッダーを追加します。APP1 は、リクエストを処理する前に常にそのヘッダーを探します。そのようなヘッダーがない場合、redirect_url をパラメーターとしてユーザーを APP2 認証画面にリダイレクトします。

于 2013-01-16T08:30:18.437 に答える