My Organization API を使用すると、統合を技術的にきめ細かく制御できます。最短でデプロイするには、まず 埋め込み可能な UI コンポーネント、SDK、サンプルアプリケーションから始めることを強くお勧めします。埋め込み可能な UI コンポーネントとサンプルアプリケーションを使用すると、お客様やエンドユーザーにセルフサービスエクスペリエンスを提供するまでの時間と労力を大幅に削減できます。
Auth0 ドメインとカスタムドメインMy Organization API では、正規の Auth0 ドメインまたはカスタムドメインを使用できますが、次の内容を含むプロセス全体を通して、同じドメインを使用する必要があります。
アクセストークンをリクエストする
オーディエンスまたは aud の値を設定する
My Organization API のエンドポイントを呼び出す
Auth0 でカスタムドメインを使用する方法の詳細については、Custom Domains を参照してください。アクセスポリシーデフォルトでは、My Organization API には次のアプリケーション API アクセスポリシーが適用されます。
ユーザーフローでは require_client_grant
マシン間フローでは deny-all
アプリケーションがユーザーに代わって My Organization API にアクセスするには、そのアプリケーションのクライアントグラントを作成し、アプリケーションがリクエストできる最大のスコープを定義します。あるいは、ユーザーアクセスフローを allow_all に変更することで、テナント内の任意のアプリケーションが任意のスコープをリクエストできるようにすることもできます。
My Organization API は機密性の高い情報や操作を扱うため、Auth0 はユーザーアクセスフローで allow_all を使用することを推奨していません。アプリケーションには本当に必要なアクセス権のみを付与し、潜在的なセキュリティリスクを最小限に抑えるために、最小権限の原則に従ってください。
最終的にアプリケーションに付与される権限は、アプリケーション API アクセスポリシーで許可されたスコープ、エンドユーザーに割り当てられたロールベースアクセス制御 (RBAC) の権限、およびユーザーの同意 (該当する場合) の共通部分によって決まります。アプリケーション API アクセスポリシーと、それに関連付けられたクライアントグラントの管理方法の詳細については、Application Access to APIs: Client Grants を参照してください。トークンの有効期間My Organization API は、有効期間が 600 秒 (10 分) に固定されたアクセストークンを発行します。この短い有効期間は、テナントとそのリソースを保護するために意図的に設けられたセキュリティ対策です。
My Organization API は、セキュリティ上の理由から常にオプトイン方式です。API を無効にすると、再度有効にするまで、接続されているすべてのアプリケーションからアクセスできなくなります。
My Organization API で使用するために、Auth0 でアプリケーションを作成します。作成後、Auth0 Dashboard > Applications > APIs に移動し、アプリケーションで必要なスコープを含めて My Organization API を認可します。アプリケーションでは my_organization_configuration オブジェクトを指定する必要があります。指定しない場合、My Organization API はエラーを返してリクエストを拒否します。my_organization_configuration オブジェクトでは、次のプロパティを使用できます。
プロパティ
説明
connection_profile_id
接続プロファイル ID. My Organization API の使用時にアプリケーションで利用される 接続プロファイル の ID です。指定しない場合、接続プロファイル が必要な My Organization API の機能は動作しません。この ID は、同じテナント内の有効な 接続プロファイル を参照している必要があります。
user_attribute_profile_id
User Attribute Profile ID。My Organization API の使用時にアプリケーションで利用される ユーザー属性プロファイル の ID です。指定しない場合、ユーザー属性プロファイルが必要な My Organization API の機能は動作しません。この ID は、同じテナント内の有効なユーザー属性プロファイルを参照している必要があります。
Enum (allow、allow_if_empty) 。 このアプリケーションから My Organization API 経由でエンドユーザーが接続の削除を試みた際に、My Organization API がどのように動作するかを示します。enum の値と説明は次のとおりです: 1. allow: ユーザーが適切なスコープを持っている場合、接続を削除できます。その結果、その接続に関連するすべてのユーザーも削除されます。 2.allow_if_empty: ユーザーが適切なスコープを持っている場合でも、接続内にユーザーが存在しない場合にのみ接続を削除できます。ユーザーが存在する場合、My Organization API はエラーを返し、削除は実行されません。
きめ細かな監査とモニタリングを実現するため、My Organization API はこの API 固有のログイベントセットを生成します。テナントでは引き続き標準のシステムログが出力されますが、以下の表は、特に My Organization API のアクティビティによって発生するイベントタイプの完全な一覧を示しています。これらのイベントコードを使用すると、API によって管理されるすべてのリソース、具体的には設定、組織の詳細、IdP、ドメインにわたるアクティビティを追跡できます。ログイベントスキーマの詳細については、GitHub リポジトリを参照してください。
Event Code
Event
Event Description
my_organization_api_config_failed
My Organization API Config Failed
My Organization API サービスの設定リソースに対する API 呼び出しに失敗しました
my_organization_api_org_details_succeeded
My Organization API Org Details Succeeded
My Organization API サービスの組織の詳細リソースに対する API 呼び出しに成功しました
my_organization_api_org_details_failed
My Organization API Org Details Failed
My Organization API サービスの組織の詳細リソースに対する API 呼び出しに失敗しました
my_organization_api_idp_succeeded
My Organization API Identity Provider Succeeded
My Organization API サービスのIDプロバイダー リソースに対する API 呼び出しに成功しました
my_organization_api_idp_failed
My Organization API Identity Provider Failed
My Organization API サービスのIDプロバイダー リソースに対する API 呼び出しに失敗しました
my_organization_api_domain_succeeded
My Organization API Domain Succeeded
My Organization API サービスのドメイン リソースに対する API 呼び出しに成功しました
my_organization_api_domain_failed
My Organization API Domain Failed
My Organization API サービスのドメイン リソースに対する API 呼び出しに失敗しました
Enum (null, none, readonly, limited, full)。My Organization API の使用時に、ユーザーが持つアクセスの種類を決定します。1. null 2. none - テナント管理者によって割り当てられた関連付けです。この接続は My Organization API では表示も編集もできません。3. readonly - テナント管理者によって割り当てられた関連付けです。この接続は表示できますが、My Organization API では編集できません。4. limited - テナント管理者によって割り当てられた関連付けです。My Organization API では、限定された情報の表示と変更が許可されます。5. full - テナント管理者によって割り当てられた関連付けです。My Organization API の利用者は、My Organization API の使用時に、この接続を追加の制限なく変更できます。注: organization_access_level の値にかかわらず、My Organization API による変更には常に 接続プロファイル によって適用される制限が適用されます。
organization_connection_name
String。接続の作成時に指定した名前を格納します。このフィールドは、接続プロファイル の connection_name_prefix_template を評価して My Organization API が算出します。このフィールドは Management API でのみ表示および変更できます。