Jboss Keycloak を使用した Joomla への SAML シングル サインオン
概要
miniOrange Joomla SAML SP SSO プラグインは、SAML 2.0 プロトコルを使用して Joomla サイトを Keycloak に統合するのに役立ちます。当社のユーザーフレンドリーなプラグインは、Joomla で Keycloak を使用してシングル サインオン (SSO) を設定するプロセスを簡素化し、安全なログイン エクスペリエンスを保証します。これにより、ユーザーは Keycloak IDP 認証情報を使用してさまざまな Joomla サイトに簡単にアクセスできます。
当社のプラグインは、Joomla 3、4、5 と互換性があるように設計されており、すべての SAML 2.0 準拠の ID プロバイダーとシームレスに動作します。Joomla SAML SP プラグインが提供する包括的な機能の詳細な概要については、こちらのページをご覧ください。以下では、Keycloak を ID プロバイダー (IDP) として、Joomla をサービス プロバイダー (SP) として、Joomla サイトと Keycloak 間の SAML SSO ログインを構成する手順を説明しています。
JBoss KeycloakとJoomla間のシングルサインオンを設定するには、次の手順に従うこともできます。 ビデオのセットアップ.
構成手順
この設定では、 Jboss キークローク ユーザーを保存するためのリポジトリとして機能します。つまり、IDPとして機能します。 Joomlaの ユーザーがJboss Keycloakの認証情報を使用してログインする場所です。 Joomla SAML SP SSO プラグイン インストールされます。
ステップ1: Joomla SAML SPプラグインをインストールする
- Joomla サイトにログインします。 管理者 コンソール。
- 左側のトグルメニューから、 をクリックします システムをクリックし、「インストール」セクションで「」をクリックします。 拡張機能.
- 今後はクリック またはファイルを参照します ボタンをクリックして、前にダウンロードしたプラグイン ファイルを見つけてインストールします。

- プラグインのインストールは成功しました。 今すぐクリックしてください はじめよう!

- に行きます サービスプロバイダーのメタデータ タブをクリックして下にスクロールして、 SPエンティティID と ACSのURL.

ステップ 2: Jboss Keycloak を 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.
よくあるご質問
その他のよくある質問➔テスト構成は成功しましたが、ログインしようとするとリダイレクト ループに陥ってしまいます。
これが起こる理由はいくつかあります。
1. Web サイトでキャッシュが有効になっています。
自動リダイレクトが有効になっている場合、ユーザーは IDP ログイン ページにリダイレクトされ、ログイン後にメイン サイトに再度戻りますが、キャッシュが有効になっているため、IDP ログイン ページにリダイレクトされ、ループが発生します。
2. HTTP/HTTPS の不一致:
これは、サイトで HTTPS が強制されていないが、IDP 側で HTTPS URL が設定されている場合に発生します。これは、.htaccess ファイルまたは Apache レベルでリダイレクト ルールを定義して、サイトで HTTPS を強制することで解決できます。
3. クッキーの混入:
ユーザーのログイン後にプラグインによって作成された Cookie が別のプラグインによって変更され、ユーザーは Joomla サイトにログインできなくなりますが、セッションは IDP 上に作成されます。
「テスト構成」をクリックすると、IDP ではなく Joomla サイトにリダイレクトされるのはなぜですか?
Joomla SAML プラグインでは、プラグインをインストールした後に拡張機能が有効になっていないと、「構成のテスト」をクリックすると、IDP にリダイレクトされるのではなく、自分のサイトに移動します。これを解決するには、プラグインをインストールした後に、プラグインのすべての拡張機能を有効にする必要があります。
この問題を解決するには、以下の手順に従ってください。
1. Joomla 管理インターフェースで、「拡張機能」->「管理」->「管理」に移動します。
2. 「miniorange」を検索します。
3. プラグインのすべての拡張機能を有効にします。
アイデンティティ プロバイダーにログインし、Joomla サイトにリダイレクトされましたが、ログインしていません。
頻繁に発生する可能性のあるエラーをいくつか示します。
INVALID_ISSUER: これは、ID プロバイダーによって提供された正しい発行者またはエンティティ ID 値を入力していないことを意味します。エラー メッセージには、予期された値 (構成した値) と SAML レスポンスで実際に見つかった値が表示されます。
INVALID_AUDIENCE: これは、アイデンティティ プロバイダーでオーディエンス URL が正しく設定されていないことを意味します。アイデンティティ プロバイダーで https://base-url-of-your-joomla-site/plugins/authentication/miniorangesaml/ に設定する必要があります。
INVALID_DESTINATION: これは、アイデンティティ プロバイダーで宛先 URL が正しく設定されていないことを意味します。アイデンティティ プロバイダーで https://base-url-of-your-joomla-site/plugins/authentication/miniorangesaml/saml2/acs.php に設定する必要があります。
INVALID_SIGNATURE: これは、提供した証明書が SAML レスポンスで見つかった証明書と一致しなかったことを意味します。IdP からダウンロードした証明書と同じ証明書を提供していることを確認してください。IdP のメタデータ XML ファイルがある場合は、属性 use=' signing' を持つ X509 証明書タグで囲まれた証明書を提供していることを確認してください。
INVALID_CERTIFICATE: これは、提供した証明書の形式が正しくないことを意味します。IdP から提供された証明書全体をコピーしたことを確認してください。IdP のメタデータ XML ファイルからコピーした場合は、値全体をコピーしたことを確認してください。
設定されたフィンガープリントに一致する証明書が見つかりません。
これは、SAML レスポンスで受信した証明書がプラグインで構成された証明書と一致しない場合にのみ可能です。テスト構成ウィンドウに表示される証明書の値をコピーし、プラグインのサービス プロバイダー タブの X.509 証明書フィールドに貼り付けます。
Joomla SAML で設定をエクスポートするにはどうすればいいですか?
エクスポート設定を行うには、次の手順に従ってください。
1) miniOrange SAML SP プラグインに移動し、「サービス プロバイダーの設定」タブに移動します。
2) 次に、ページの下部にある「インポート/エクスポート」ボタンをクリックし、「構成のエクスポート」ボタンをクリックします。
3) 「システム」>>「管理」に移動し、検索バーで miniOrange を検索します。次に、すべての miniOrange 拡張機能をアンインストールします。
構成をインポートするには、次の手順に従ってください。
1) 最新のプラグインをインストールし、プラグインで miniOrange の資格情報を使用してログインします。
2) 「サービスプロバイダーの設定」タブに移動し、「インポート/エクスポート」ボタンをクリックします。
3) ダウンロードした構成ファイルをアップロードし、「構成のインポート」ボタンをクリックします。
Joomla SAML プラグインを更新中にテーブルが見つからないというエラーが発生するのはなぜですか?
Joomla SAML プラグインの更新中に、テーブルまたは列がデータベースに追加されていない場合は、テーブルが見つからないというエラーが発生します。この問題は通常、プラグインの更新中にテーブルまたは列がデータベースに追加されていない場合に発生します。
この問題を解決するには、プラグインを再インストールできます。次の手順に従ってください。
既存のプラグインをアンインストールします(プラグインをアンインストールする前に、既存のプラグインのバックアップを取ってください)
– 拡張機能 -> 管理 -> 管理に移動します
– miniOrangeを検索
– すべての拡張機能を選択し、「アンインストール」をクリックします。
次に、プラグインを再度インストールして設定します。
致命的なエラー「名前がすでに使用されているため、クラスを宣言できません」を解決するにはどうすればよいでしょうか?
Joomla サイトは、関連する SP または IDP プラグインを使用して、サービス プロバイダーまたはアイデンティティ プロバイダーとして使用できます。このエラーが発生するのは、おそらく両方のプラグインを同じサイトにインストールしたためです。
この問題を解決するには、以下の手順に従ってください: Joomla ディレクトリから次のフォルダを削除します:
1. /libraries/miniorangejoomlaidpplugin
2. /libraries/miniorangesamlplugin
3. /plugins/system/samlredirect
これで、Joomla サイトにログインできるはずです。
残りの拡張機能を削除します。
1. Joomla サイト管理コンソールで、「拡張機能」->「管理」->「管理」に移動します。
2. 「miniorange」を検索
3. すべての拡張機能を選択し、「アンインストール」をクリックします。
SSO が機能していませんか? 管理ツールを SAML SP プラグインと一緒に使用していますか?
リダイレクトの問題は、Joomla SAML SSO の管理ツール プラグインを使用しているときに発生します。管理ツール プラグインは .htaccess ファイルに変更を加え、サイトからのリダイレクトを防ぐ特定のルールを追加します。
上記の問題は、以下の手順に従って解決できます。
1. 「管理ツール」>>「コントロール パネル」に移動し、「.htaccess メーカー」オプションをクリックします。
2. 次に、「一般的なファイルインジェクション攻撃から保護する」オプションを無効にします。
次に、サイトのキャッシュをクリアし、シングル サインオンをテストします。
SAML トレーサー ログを使用して SAML 要求/応答を確認またはダウンロードするにはどうすればよいですか?
ログイン中に「サインインできませんでした。管理者に問い合わせてください」というエラーが表示されます。
アイデンティティ プロバイダーが SAML レスポンスでエラーを送信しているようです。この問題を解決するには、SAML SP プラグインの [サービス プロバイダー設定] タブに移動してください。[構成のテスト] をクリックし、構成結果ウィンドウを確認します。属性マッピングが正しく行われていることを確認し、X.509 証明書の値が正確であることを確認します。