第7章 パブリックホスト名の使用


Red Hat Single Sign-On では、パブリックのホスト名を使用します。たとえば、トークンの issuer フィールドおよびパスワードリセットメールで送信される URLで使用されます。

Hostname SPI は、リクエストに対するホスト名のカスタマイズ方法を提供します。初期状態のプロバイダーでは、フロントエンドリクエストの固定 URL を設定し、バックエンド要求をリクエスト URI を基にすることを許可します。組み込みプロバイダーが必要な機能を提供しない場合に、独自のプロバイダーを開発することもできます。

7.1. デフォルトのプロバイダー

デフォルトのホスト名プロバイダーは、設定された frontendUrl をフロントエンドリクエスト (ユーザーエージェントからの要求) のベース URL として使用し、バックエンドリクエスト (クライアントからの直接リクエスト) のベースとしてリクエスト URL を使用します。

frontend の要求は、Keycloak サーバーと同じ context-path を持つ必要はありません。これは、https://auth.example.orghttps://example.org/keycloak などのように Keycloak を公開することができますが、内部的には、URL が https://10.0.0.10:8080/auth になる可能性があります。

これにより、ユーザーエージェント (ブラウザー) がパブリックドメイン名を介して Red Hat Single Sign-On にリクエストを送信できますが、内部クライアントは内部ドメイン名または IP アドレスを使用できます。

これは OpenID Connect Discovery エンドポイントに反映されます。たとえば、authorization_endpoint はフロントエンド URL を使用し、token_endpoint はバックエンド URL を使用します。ここでは、インスタンスのパブリッククライアントはパブリックエンドポイント経由で Keycloak と通信するため、authorization_endpointtoken_endpoint のベースが同じになります。

Keycloak の frontendUrl を設定するには、-Dkeycloak.frontendUrl=https://auth.example.org をスタートアップに渡すか、standalone.xml で設定できます。以下の例を参照してください。

<spi name="hostname">
    <default-provider>default</default-provider>
    <provider name="default" enabled="true">
        <properties>
            <property name="frontendUrl" value="https://auth.example.com"/>
            <property name="forceBackendUrlToFrontendUrl" value="false"/>
        </properties>
    </provider>
</spi>

jboss-cli で frontendUrl を更新するには、次のコマンドを使用します。

/subsystem=keycloak-server/spi=hostname/provider=default:write-attribute(name=properties.frontendUrl,value="https://auth.example.com")

すべてのリクエストがパブリックドメイン名を通過する必要がある場合は、forceBackendUrlToFrontendUrltrue に設定すると、バックエンドリクエストもフロントエンド URL を強制的に使用させることができます。

個々のレルムのデフォルトのフロントエンド URL を上書きすることもできます。これは管理コンソールで実行できます。

管理エンドポイントおよびコンソールをパブリックドメインに公開しない場合は、adminUrl プロパティーを使用して管理コンソールの固定 URL を設定します。これは frontendUrl とは異なります。/auth/admin へのアクセスを外部でブロックする必要もあります。詳細は、サーバー管理ガイド を参照してください。

トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat, Inc.