PATCH /v2/prompts/{prompt}/screen/{screen}/renderingエンドポイントを確認してください。
レンダリング設定には、次のプロパティが含まれます。
レンダリングモード
rendering_mode プロパティは、画面でデフォルトの Universal Login UI を使用するか、カスタムの ACUL 実装を使用するかを決定します。
- Standard: 画面はデフォルトの Universal Login UI でレンダリングされます。partials と template variables を使って画面をカスタマイズできます。
- Advanced: 画面は、
head_tagsを通じて読み込まれるカスタムの JavaScript と CSS アセットを使ってレンダリングされます。Partials は適用されません。デフォルトでは、高度なモードはテナント内のすべてのアプリケーションと組織に適用されます。 - Advanced (filtered): 画面は、
filtersで定義された条件 (特定のアプリケーション、組織、またはカスタムドメイン) に一致するリクエストに対して ACUL でレンダリングされます。フィルターに一致しないリクエストは標準レンダリングにフォールバックし、その場合は partials が適用されます。
rendering_mode を advanced に設定し、match_type (includes_any または excludes_any) と少なくとも 1 つのエンティティ配列 (clients、organizations、または domains) を含む filters オブジェクトを指定します。各エンティティは、id または metadata のキーと値のペアで識別できます。
ヘッドタグは、カスタム UI を ACUL のホストページに読み込むための主要な仕組みです。Auth0 が Advanced モードで画面をレンダリングすると、最小限の HTML ページを返し、head_tags で定義された要素をページの <head> に注入します。これらのタグによって、カスタム認証画面を構成する JavaScript と CSS のアセットバンドルが読み込まれます。
head_tags 配列の各エントリは、次のプロパティを持つオブジェクトです。
integrity 属性は、script タグおよびスタイルシートタグでは必須です。Auth0 は、アセットが改ざんされていないことを検証するために Subresource Integrity (SRI) を使用します。
動的URLセグメント
- prompt と画面:
{{ screen.name }},{{ prompt.name }},{{ locale }} - クライアント:
{{ client.id }},{{ client.name }},{{ client.metadata.KEY_NAME }} - 組織:
{{ organization.id }},{{ organization.name }},{{ organization.metadata.KEY_NAME }}
integrity 属性では、空白区切りで複数のハッシュを指定できます。いずれかのハッシュが一致すれば、ブラウザーはそのリソースを読み込みます。
default_head_tags_disabled を true に設定します。
コンテキストデータ
universal_login_context オブジェクトを通じて提供します。アプリケーションコードでは、コンテキストデータにアクセスするために ACUL React SDK のフックまたは ACUL JS SDK のメソッドを使用します。
画面で利用できるようにしたい各値は、context_configuration 配列に明示的に指定する必要があります。詳細については、ACUL の設定、追加データを参照してください。
Auth0 は、空または null に評価されるキーをペイロードから削除します。
ドット記法を使用して動的なキーを追加することもできます。
- アプリケーションのメタデータには
client.metadata.YOUR_KEY。 - 組織のメタデータには
organization.metadata.YOUR_KEY。 - カスタムドメインのメタデータには
transaction.custom_domain.domain_metadata.YOUR_KEY。 ext-接頭辞を付けて/authorizeエンドポイントに渡すカスタムクエリパラメータにはuntrusted_data.authorization_params.ext-YOUR_KEY。- ユーザーのアプリのメタデータには
user.app_metadata.YOUR_KEY。 - ユーザーのメタデータには
user.user_metadata.YOUR_KEY。