SimpleSAML を使用した Joomla への SAML シングル サインオン
概要
miniOrange Joomla SAML SP SSO プラグインは、SAML 2.0 プロトコルを使用して、Joomla サイトを SimpleSAML に統合するのに役立ちます。当社のユーザーフレンドリーなプラグインは、Joomla で SimpleSAML を使用してシングル サインオン (SSO) を設定するプロセスを簡素化し、安全なログイン エクスペリエンスを保証します。これにより、ユーザーは SimpleSAML IDP 資格情報を使用して、さまざまな Joomla サイトに簡単にアクセスできます。
当社のプラグインはJoomla 3、4、5と互換性があるように設計されており、すべてのSAML 2.0準拠のアイデンティティプロバイダーとシームレスに動作します。Joomla SAML SPプラグインが提供する包括的な機能の詳細な概要については、当社のページをご覧ください。 こちら以下では、SimpleSAML を ID プロバイダー (IDP) として、Joomla をサービス プロバイダー (SP) として、Joomla サイトと SimpleSAML 間の SAML SSO ログインを構成する手順を段階的に説明します。
構成手順
この設定では、 シンプルSAML ユーザーを保存するためのリポジトリとして機能します。つまり、IDPとして機能します。 Joomlaの ユーザーはSimpleSAMLの認証情報を使用してログインします。 Joomla SAML SP SSO プラグイン インストールされます。
ステップ1: Joomla SAML SPプラグインをインストールする
- Joomla サイトにログインします。 管理者 コンソール。
- 左側のトグルメニューから、 をクリックします エントルピーをクリックし、「インストール」セクションで「」をクリックします。 拡張機能.
- 今後はクリック またはファイルを参照します ボタンをクリックして、前にダウンロードしたプラグイン ファイルを見つけてインストールします。
- プラグインのインストールは成功しました。 今すぐクリックしてください はじめよう!
- に行きます サービスプロバイダーのメタデータ タブをクリックして下にスクロールして、 SPエンティティID と ACSのURL.
ステップ2: SimpleSAMLをIDP(アイデンティティプロバイダー)として設定する
アイデンティティプロバイダー機能の有効化:
- 最初に行う必要があるのは、アイデンティティ プロバイダー機能を有効にすることです。 これは編集によって行われます config/config.php (このファイルはsimplesamlのインストールディレクトリにあります)。オプション Enable.saml20-idp SAML 2.0 IdPサポートを有効にするかどうかを制御します。有効にするには、 true 彼らへ。
- 例: 'enable.saml20-idp' => true。
認証モジュールの構成:
- exampleauth: UserPass認証モジュールはexampleauthモジュールの一部です。このモジュールはデフォルトでは有効になっていないので、 enable これは、 enable (ファイル名) 内 モジュール/ exampleauth/.
- Unix では、(SimpleSAMLphp インストール ディレクトリから) を実行することでこれを実行できます。
- 次のステップは、このモジュールを使用して認証ソースを作成することです。認証ソースは、特定の構成を持つ認証モジュールです。各認証ソースには名前があり、IdP構成でこの特定の構成を参照するために使用されます。認証ソースの構成は、 config/authsources.php.
- この設定では、このファイルには XNUMX つのエントリが含まれている必要があります。
[ 'exampleauth: UserPass', 'student: studentpass' => [ 'uid' =>
[ 'uid' => ['学生'], 'eduPersonAffiliation' => ['メンバー', '学生'], ],
自己署名証明書の作成:
- IdP には、SAML アサーションに署名するための証明書が必要です。以下は、新しい秘密鍵とそれに対応する自己署名証明書を生成するために使用できる openssl コマンドの例です。秘密鍵と証明書は、certdir 設定で定義されたディレクトリ (デフォルトは cert/) に保存されます。この鍵と証明書は、SAML メッセージの署名に使用できます。
openssl req -newkey rsa:3072 -new -x509 -days 3652 -nodes -out example.org.crt -keyout example.org.pem
example.org.crt //(公開鍵) example.org.pem //(秘密鍵)
IdP の設定:
- SAML 2.0 IdP は、metadata/saml20-idp-hosted.php に保存されているメタデータによって構成されます。 これは最小限の構成です。
<?php $metadata['__DYNAMIC:1__'] = [ /* * The hostname for this IdP. This makes it possible to run multiple * IdPs fro
IdP に SP を追加する:
- 構成している ID プロバイダーは、接続するサービス プロバイダーについて知っている必要があります。 これは、metadata/saml20-sp-remote.php に保存されているメタデータによって構成されます。 これは、SimpleSAMLphp SP の metadata/saml20-sp-remote.php メタデータ ファイルの最小限の例です。
example.com を Joomla ドメイン名に置き換えます。
- ここでは、SimpleSAML からサービス プロバイダー (つまり Joomla) に送信するユーザー属性を追加することもできます。
- インストールの SimpleSAMLphp ホームページに移動します。インストールの URL は次のようになります。
https://service.example.com/simplesaml/ where service.example.com
- プラグインの構成に必要な IdP メタデータをここから取得できます。
ステップ3: JoomlaをSP(サービスプロバイダー)として設定する
Joomla SAML プラグインで、[サービス プロバイダーのセットアップ] タブに移動します。プラグインを設定するには 3 つの方法があります。
A. IDP メタデータをアップロードすることにより、次のようになります。
- Joomla SAML プラグインで、次の場所に移動します。 サービスプロバイダーのセットアップ タブをクリックしてから IdPメタデータをアップロード.
B. メタデータ URL による:
- 入力します メタデータURL (IDP アプリからコピー) をクリックして、 フェッチ
C. 手動設定:
- コピー SAML エンティティ ID、SAML シングル サインオン エンドポイント URL、および X.509 証明書 フェデレーションメタデータドキュメントからコピーして貼り付けます IDP エンティティ ID または発行者、シングル サインオン URL、X.509 証明書 プラグイン内のそれぞれのフィールド。
IdP エンティティ ID または発行者 | フェデレーション メタデータ ドキュメントの SAML エンティティ ID |
シングルサインオンURL | フェデレーション メタデータ ドキュメントの SAML シングル サインオン エンドポイント URL |
X.509 証明書の値 | フェデレーション メタデータ ドキュメント内の X.509 証明書 |
ステップ4: 属性マッピング - プレミアム機能
- 属性は、アイデンティティ プロバイダーに保存されるユーザーの詳細です。
- 属性マッピングは、アイデンティティ プロバイダー (IDP) からユーザー属性を取得し、それらを Joomla ユーザー属性 (名、姓、住所、電話番号など) にマッピングするのに役立ちます。
- Joomla サイトにユーザーを自動登録すると、これらの属性は Joomla ユーザーの詳細に自動的にマッピングされます。
- 「属性マッピング」タブに移動し、すべてのフィールドに入力します。
ユーザー名: | IdP からのユーザー名属性の名前 (デフォルトでは NameID を保持します) |
Email: | IdP からの電子メール属性の名前 (デフォルトでは NameID を保持します) |
名前: | IdP からの name 属性の名前 |
- ここでマップする値をより正確に把握するには、[サービス プロバイダーの設定] タブの [テスト構成結果] を確認します。
注: 属性マッピングの仕組みを確認するには こちら.
ステップ 5: グループ マッピング - プレミアム機能
- グループ/ロール マッピングは、アイデンティティ プロバイダー (IdP) 内の特定のグループのユーザーに特定のロールを割り当てるのに役立ちます。
- 自動登録中、ユーザーにはマップ先のグループに基づいてロールが割り当てられます。
- グループ/ロール マッピングは、アイデンティティ プロバイダー (IdP) 内の特定のグループのユーザーに特定のロールを割り当てるのに役立ちます。
- 自動登録中、ユーザーにはマップ先のグループに基づいてロールが割り当てられます。
注: グループ/ロールマッピングの仕組みを確認するには こちら.
ステップ 6: リダイレクトと SSO リンク
- [ログイン設定] タブに移動します。以下の手順に従って、Joomla サイトで SAML SSO を実行するためのログイン URL を追加できます。
- このタブでは、ユーザーをアイデンティティ プロバイダーに自動的にリダイレクトしたり、スーパー ユーザーのバックエンド ログインを有効にするなど、複数の機能が利用できます。これらの機能を使用するには、それぞれのチェックボックスをクリックします。
- 機能とさまざまなライセンス プランの完全なリストを確認するには、[アップグレード] タブをクリックします。または、ここをクリックして機能とライセンス プランを確認することもできます。
- 何か問題が発生した場合やご質問がある場合は、プラグインのサポートボタンからお問い合わせいただくか、以下のメールアドレスまでご連絡ください。 joomlasupport@xecurify.com.