コードとしての構成
Liferayセルフホスト Liferay SaaS Liferay PaaS
Liferay DXP 7.4
Liferayのインスタンス設定は、クライアント拡張でデプロイ可能です。 例えば、OAuth2認証プロファイルを設定クライアント拡張としてデプロイし、認証を必要とする他のクライアント拡張を有効にできます。 言語クライアント拡張機能を展開して言語キーをカスタマイズすることもできます。
言語クライアント拡張
Liferay DXP 2025.Q1+/ポータル GA132+
言語クライアント拡張 は、新しい言語キーを追加したり、既存のキーとその翻訳を上書きしたりします。 例は Liferay サンプル ワークスペースにあります。
インスタンス設定クライアント拡張機能
Liferay DXP 7.4(セルフホスト)が利用可能 Liferay SaaSが利用可能
インスタンス設定クライアント拡張機能を使用して、さまざまな Liferay 構成を構成できます。 各構成は、PID (永続 IDentity) によって参照されます。
client-extension.yaml ファイルでインスタンス設定クライアント拡張機能を指定します。
type: instanceSettings
OAuthヘッドレスサーバークライアント拡張
クライアント拡張を使用すると、Headless Serverクライアントプロファイルで事前に構成されたLiferay OAuth2 アプリケーションを構成することができます。 この種の認証プロファイルは、特定のユーザーによって認証されていないAPI呼び出しに必要です。
client-extension.yamlファイルにOAuthヘッドレスサーバークライアント拡張を指定します。
type: oAuthApplicationHeadlessServer
oAuthApplicationHeadlessServerの特別な動作
OAuth ヘッドレス サーバー クライアント拡張機能は、Liferay が ルート として提供するメタデータに依存します ( コンテキスト依存情報を参照)。 このクライアント拡張機能を使用してデプロイされた実行可能なワークロードは、実行前にこのルートを待機する必要があります。
以下は、プロジェクトで oAuthApplicationHeadlessServer クライアント拡張機能が定義されている場合に、環境変数 LIFERAY_ROUTES_CLIENT_EXTENSION によって定義されるルートの例です。
.
# The authorization URI of the DXP virtual instance (no protocol, domain or port)
├── <oAuth2ApplicationExternalReferenceCode>.oauth2.authorization.uri
# The audience of the OAuth headless server application
├── <oAuth2ApplicationExternalReferenceCode>.oauth2.headless.server.audience
# The client ID of the OAuth headless server application
├── <oAuth2ApplicationExternalReferenceCode>.oauth2.headless.server.client.id
# The client secret of the OAuth headless server application
├── <oAuth2ApplicationExternalReferenceCode>.oauth2.headless.server.client.secret
# The scopes of the OAuth headless server application
├── <oAuth2ApplicationExternalReferenceCode>.oauth2.headless.server.scopes
# The introspection URI of the DXP virtual instance (no protocol, domain or port)
├── <oAuth2ApplicationExternalReferenceCode>.oauth2.introspection.uri
# The JWKS (JSON Web Keys Set) URI of the DXP virtual instance (no protocol, domain or port)
├── <oAuth2ApplicationExternalReferenceCode>.oauth2.jwks.uri
# The token URI of the DXP virtual instance (no protocol, domain or port)
└── <oAuth2ApplicationExternalReferenceCode>.oauth2.token.uri
oAuthApplicationHeadlessServer クライアント拡張機能を使用して Liferay DXP と通信するアプリケーション ロジックは、送信されるデータを保護するために、このルート メタデータによって提供される情報を使用する必要があります。 必要なすべての OAuth 2 メタデータはこのように提供されるため、ハードコードする必要はありません。
OAuthユーザーエージェントクライアント拡張
クライアント拡張を使用すると、User Agent Applicationクライアントプロファイルで事前に設定された Liferay OAuth2 アプリケーションを構成することができます。 この種の認証プロファイルは、特定のユーザーによって認証されたAPI呼び出し(例えば、他の マイクロサービスクライアント拡張を使用してLiferay APIにREST呼び出しを行うなど)に必要です。
client-extension.yamlファイルにOAuth ユーザーエージェントクライアント拡張を指定します。
type: oAuthApplicationUserAgent
oAuthApplicationUserAgentの特別な動作
OAuth ヘッドレス ユーザー エージェント クライアント拡張機能は、Liferay が ルート として提供するメタデータに依存します ( コンテキスト依存情報を参照)。 このクライアント拡張機能を使用してデプロイされた実行可能なワークロードは、実行前にこのルートを待機する必要があります。
以下は、プロジェクトで oAuthApplicationUserAgent クライアント拡張機能が定義されている場合に、環境変数 LIFERAY_ROUTES_CLIENT_EXTENSION によって定義されるルートの例です。
.
# The authorization URI of the DXP virtual instance (no protocol, domain or port)
├── <oAuth2ApplicationExternalReferenceCode>.oauth2.authorization.uri
# The introspection URI of the DXP virtual instance (no protocol, domain or port)
├── <oAuth2ApplicationExternalReferenceCode>.oauth2.introspection.uri
# The JWKS (JSON Web Keys Set) URI of the DXP virtual instance (no protocol, domain or port)
├── <oAuth2ApplicationExternalReferenceCode>.oauth2.jwks.uri
# Newline separated redirect URIs of the DXP virtual instance
├── <oAuth2ApplicationExternalReferenceCode>.oauth2.redirect.uris
# The token URI of the DXP virtual instance
├── <oAuth2ApplicationExternalReferenceCode>.oauth2.token.uri (no protocol, domain or port)
# The audience of the OAuth user agent application
├── <oAuth2ApplicationExternalReferenceCode>.oauth2.user.agent.audience
# The client ID of the OAuth user agent application
├── <oAuth2ApplicationExternalReferenceCode>.oauth2.user.agent.client.id
# The scopes of the OAuth user agent application
└── <oAuth2ApplicationExternalReferenceCode>.oauth2.user.agent.scopes
oAuthApplicationUserAgent クライアント拡張機能を使用して Liferay DXP と通信するアプリケーション ロジックは、送信されるデータを保護するために、このルート メタデータによって提供される情報を使用する必要があります。 必要なすべての OAuth 2 メタデータはこのように提供されるため、ハードコードする必要はありません。