SSOシングルサインオンクライアントドッキング、フロントエンドとバックエンドの分離
フロントエンドとバックエンドが分離されている場合、シングルサインオンに接続する場合はデータ転送の状況が発生し、ブラウザはCookie情報を保存する必要があります。発生した項目は、ブラウザにCookie情報がない場合、ログインにジャンプして再度ログインすることです。 、そこで、シングルサインオン後にログインページにジャンプしないように、このフローチャートを作成しました。これは、フロントエンドとバックエンドから分離されたプロジェクトでのシングルサインオンの要求プロセスを明確に示しています。
注意が必要です:
- http://cas.socmap.orgは、シングルサインオンサービスのアドレスです。
- / apiパスのないURLは、前のアドレスへの直接アクセスと見なされます
- 前のプロジェクトのバックエンドアクセスインターフェイスの前にパス/ api /が追加されているため、フロントエンドプロジェクトはバックエンドインターフェイスに直接アクセスできます。URLの先頭のパスが/ api /の場合、nginxはリクエストをバックエンドプロジェクトに転送します。
- バックエンドインターフェイスに直接アクセスするためにシングルサインオンシステムが必要な場合は、サービスコールバックのアドレスに/ apiを追加する必要があります
- シングルサインオンシステムに初めてログインした後、casサービスはチケット情報とともに送信されたコールバックアドレスにジャンプします。
- バックエンドプロジェクトはコールバックリクエストを受信すると、コールバックでチケットのデータを取得し、casサーバーに移動して有効性を確認します。有効な場合は、独自のシステムで使用されるセッションとCookie情報を生成し、前のプロジェクトのリダイレクトページにアクセスして、ユーザーのCookie情報をブラウザーに保存できます。このようにして、プロジェクトのCookie情報がブラウザーに存在し、通常のページ要求を行うことができます。
ユーザーが初めてシステムにログインする
-
次の図に示すように、ログイン検証プロセスでは、nginxプロキシとフロントエンドおよびバックエンドを分離するプロセスが追加されます。(リダイレクトURLに注意してください)
-
同様に、次の図に示すように、ユーザー終了プロセスは2つの状況に分けられます。
- 差出人:xaohuihui
- 手でこするのは簡単ではありません、それを好きになることを忘れないでください