Skip to main content
SsoProviderTable コンポーネントは、organization のシングルサインオンプロバイダーを一覧表示・設定するための統合インターフェースを提供します。

設定要件

Auth0 Configuration が必要です—tenant で My Organization API が設定されていることを確認してください。設定ガイドを表示 →

インストール

どちらのコマンドを実行しても、共有ユーティリティとAuth0連携に必要な@auth0/universal-components-core 依存関係もインストールされます。

はじめに

プロップス

必須のプロップス

必須のプロップスは、コンポーネントの動作の基盤となるものです。SsoProviderTable では、一般的なプロバイダー管理のワークフローに対応するために、2つのナビゲーションアクションが必要です。
プロパティ説明
createActionComponentAction<void>必須。プロバイダーの作成ページに遷移します。
editActionComponentAction<IdentityProvider>必須。プロバイダーの編集ページに遷移します。
createAction型: ComponentAction<void>createAction プロパティは、ユーザーが “Add Provider” をクリックした際の遷移先を制御するため、必須です。これを指定しないと、テーブルは Provider 作成フローを開始する方法を判断できません。プロパティ:
  • disabled—“Add Provider” ボタンを無効にします
  • onBefore()—ナビゲーションが行われる前に実行されます。ナビゲーションを中止するには false を返します (たとえば、ユーザーに権限がない場合) 。
  • onAfter()onBefore が正常に完了した後に実行されます。作成ページへの移動や分析のトラッキングに使用します。
例:

editAction型: ComponentAction<IdentityProvider>editAction プロパティは必須です。ユーザーがプロバイダーの行をクリックしたときの遷移先を制御するためです。コールバックにはプロバイダーのデータが渡されるため、適切な編集ページへ遷移させることができます。プロパティ:
  • disabled—行クリックによる画面遷移を無効にします
  • onBefore(provider)—画面遷移の前に実行されます。画面遷移を防ぐには false を返します (例:条件付きアクセスのチェック) 。
  • onAfter(provider)onBefore が成功した後に実行されます。Provider データを使用して編集ページへ遷移するには、これを使用します。
例:

表示関連のプロップス

表示関連のプロップスは、コンポーネントの動作に影響を与えずに、その表示方法 (レンダリング) を制御します。セクションを非表示にしたり、読み取り専用モードを有効にしたりする場合に使用します。
プロパティ説明
readOnlybooleanテーブルのすべての操作を無効にします。デフォルト: false
hideHeaderbooleanヘッダーセクションを非表示にします。デフォルト: false

Action のプロップス

アクション系のプロップスは、基本的なナビゲーション以外のユーザー操作を扱います。削除、除去、有効化/無効化といった操作を制御します。
プロパティ説明
deleteActionComponentAction<IdentityProvider>Provider を完全に削除します。
deleteFromOrganizationActionComponentAction<IdentityProvider>organization から Provider を削除します。
enableProviderActionComponentAction<IdentityProvider>Provider の有効/無効を切り替えるトグル。
deleteAction型: ComponentAction<IdentityProvider>SSO プロバイダーの完全な削除を制御します。これは破壊的な操作であり、プロバイダーは Auth0 テナントから完全に削除されます。プロパティ:
  • disabled—削除オプションを無効にします
  • onBefore(provider)—削除前に実行されます。falseを返すと削除を防止できます (確認ダイアログでの使用を推奨) 。
  • onAfter(provider)—プロバイダーが正常に削除された後に実行されます。イベントの追跡や通知の表示に使用します。
例:

deleteFromOrganizationAction型: ComponentAction<IdentityProvider>tenantからは削除せずに、organizationからproviderを解除する動作を制御します。providerはそのまま残るため、後から再度追加できます。プロパティ:
  • disabled—削除オプションを無効にします
  • onBefore(provider)—削除前に実行されます。削除を中止するには (たとえば確認を表示する場合) 、false を返します。
  • onAfter(provider)—プロバイダーが組織から正常に削除された後に実行されます。
例:

enableProviderAction型: ComponentAction<IdentityProvider>プロバイダーの有効/無効を切り替えるトグルを制御します。無効にしたプロバイダーは設定自体は保持されますが、ユーザーはそのプロバイダーを使用して認証できません。プロパティ:
  • disabled—トグルを無効にします
  • onBefore(provider)—トグルの切り替え前に実行されます。状態の変更を防ぐにはfalseを返します。
  • onAfter(provider)—Providerが正常に有効化または無効化された後に実行されます。
例:

カスタマイズ用プロップス

カスタマイズ用のプロップスを使えば、ソースコードを変更することなく、ブランド、ロケール、バリデーションの要件に合わせてコンポーネントを調整できます。
プロパティ説明
schemaSsoProviderTableSchema確認フィールドのバリデーション。
customMessagesPartial<SsoProviderTableMessages>i18n テキストのオーバーライド。
stylingComponentStyling<SsoProviderTableClasses>CSS 変数とクラスのオーバーライド。
スキーマ確認ダイアログにカスタムのバリデーションルールを設定します (たとえば、削除を確定するにはプロバイダー名を入力させる、など) 。
すべてのスキーマフィールドでサポートされる項目: regexerrorMessagedelete.providerName—完全に削除する際の確認 remove.providerName—organization から削除する際の確認

customMessagesすべてのテキストと翻訳をカスタマイズできます。すべてのフィールドは任意で、指定しない場合はデフォルト値が使用されます。
header—コンポーネントのヘッダー
  • title, description, create_button_text
table—テーブル表示
  • empty_message
  • columns.name, columns.strategy, columns.status
  • actions.edit_button_text, actions.delete_button_text, actions.remove_button_text
delete.modal—削除の確認
  • title, description
  • field.label, field.placeholder, field.error
  • actions.cancel_button_text, actions.delete_button_text
remove.modal—organization からの削除の確認
  • title, description
  • actions.cancel_button_text, actions.remove_button_text
notifications—API レスポンス
  • provider_delete_success, provider_delete_error
  • provider_remove_success, provider_enable_success, provider_disable_success

スタイリングCSS変数とクラスのオーバーライドで外観をカスタマイズできます。テーマに応じたスタイリングにも対応しています。
変数—CSSカスタムプロパティ
  • common—すべてのテーマに適用
  • light—ライトテーマ専用
  • dark—ダークテーマ専用
クラス—コンポーネントのクラスオーバーライド
  • SsoProviderTable-header
  • SsoProviderTable-table
  • SsoProviderTable-row
  • SsoProviderTable-deleteModal
  • SsoProviderTable-removeModal

高度なカスタマイズ

SsoProviderTable コンポーネントは、より小さなサブコンポーネントとフックで構成されています。shadcn を使用している場合は、それらを個別にインポートして、独自の Provider 管理ワークフローを構築できます。

利用可能なサブコンポーネント

高度なユースケースでは、個々のサブコンポーネントをインポートして、独自のプロバイダー管理インターフェースを構築できます。テーブルを別のレイアウトに埋め込みたい場合や、行のレンダリングをカスタマイズしたい場合に便利です。
コンポーネント説明
ProviderRowアクションを含む各プロバイダーの行
ProviderDeleteModal完全削除の確認モーダル
ProviderRemoveModalorganizationからの削除を確認するモーダル
ProviderStatusToggle有効/無効を切り替えるコンポーネント
ProviderStrategyIconstrategyアイコンをレンダリングするコンポーネント (Okta、SAML など)

利用可能なHooks

これらのフックは、UIを含まず、基盤となるロジックのみを提供します。Auth0 APIとの連携を活用しつつ、完全に独自のインターフェイスを構築したい場合にご利用ください。
Hook説明
useSsoProviderTableProvider リストの取得と管理
useSsoProviderTableLogicUI の操作状態とハンドラー (モーダル、アクション)