OAuth プロトコルを使用した Drupal ヘッドレス SSO
概要
miniOrange の OAuth ベースのヘッドレス SSO ソリューションは、認証に OAuth プロトコルを使用して、Drupal バックエンドを OAuth サーバーに効率的に接続します。SSO プロセスが完了すると、モジュールはログインしたユーザーの JSON Web トークン (JWT) を生成し、フロントエンド サイトに送信します。 (オプション: このトークンは、その他の Drupal API を検証するために使用できます。) このガイドでは、バックエンドとフロントエンドの両方でヘッドレス SSO がどのように実装されるかの要点について説明します。
まずはバックエンドから始めましょう。前提条件
- miniOrange OAuth クライアント モジュール :これ モジュール Drupal サイトと OAuth/OIDC プロバイダー間の SSO を有効にします。
- REST & JSON API 認証モジュール : SSOが実行された後、この モジュール JWT を生成し、このトークンをフロントエンド アプリケーションに送信するのに役立ちます。(オプション: さらに Drupal API を認証するには、同じ JWT を API リクエストとともにヘッダーに渡すと、REST & JSON API 認証モジュールがその JWT を検証します。)
バックエンド構成
- miniOrange OAuth クライアント モジュール: これに従ってください セットアップガイド Drupal サイトと目的の OAuth/OIDC プロバイダー間の接続を設定します。
- REST & JSON API 認証モジュール:
- JWTを使用してDrupal APIを認証するには、 JWT認証 モジュール内のメソッド。これに従ってください セットアップガイド。
- フロントエンド アプリケーションのリダイレクト URL を構成します。
- に移動します 詳細設定 REST & JSON API 認証モジュールのタブ。
- ヘッドレス SSO のトークン エンドポイント構成 詳細には、フロントエンドアプリケーションのエンドポイントを入力します。コードパラメータを使用してシングルサインオン(SSO)プロセス後にブラウザがリダイレクトする場所です。その後、 トークンエンドポイント構成を保存する
- ログインフロー:
- ユーザーのフロントエンドアプリケーションからログインを開始します。(URLを使用) {drupal-base-url}/moログイン)
- ユーザーは設定されたサーバーにリダイレクトされます。
- 認証するにはユーザーの資格情報を入力します。
- 認証が成功すると、ユーザーは URL のクエリ パラメータとしてコードを使用してフロントエンドにリダイレクトされます。
- 前の手順で取得したコードを使用して、Drupal のトークン エンドポイントにリクエストを送信します。そのためには、以下の手順に従ってください。
- トークンエンドポイントを ヘッドレス SSO のトークン エンドポイント構成 詳細は次の画像を参照してください。
- 受信したコードを使用して POST リクエストを行う例:-
- ユーザーがフロントエンドでコード (received_code) を受け取ったとします。
- 次に、以下の形式を使用して、このコードを使用して POST リクエストを作成します。
フロントエンドシーンの解明
このセクションでは、ユーザーがフロントエンド側で実行する必要があるすべてのことを説明します。
さぁ、始めよう:
HTTP: POST https://{drupal_base_url}/getToken コード=(受信したコード)
注意: ヘッダーにJWTトークンを含むAPIリクエストの形式については、こちらを参照してください。 セットアップガイド。

お問い合わせ