メインコンテンツまでスキップ

Control Plane - 管理対象リソース一覧

このドキュメントの目的​

37個の管理APIの全体像を把握し、どのAPIをいつ使うかを理解することが目標です。

所要時間​

⏱️ 約15分(参照用)


管理APIの分類​

1. システムレベルAPI(System Manager)​

システム全体のリソースを管理。システム運用者が使用。

URL: /v1/management/tenants/{tenant-id}/...

カテゴリAPI管理対象
Onboardingオンボーディング新規テナント自動セットアップ
基本設定TenantManagementテナント
ClientManagementOAuthクライアント
UserManagementユーザー
ContactVerificationChallengeManagement連絡先確認チャレンジ(Email/電話番号のセルフサービス確認・変更)
RoleManagementロール
PermissionManagement権限
認証設定AuthorizationServerManagement認可サーバー設定
AuthenticationConfigurationManagement認証設定
AuthenticationPolicyConfigurationManagement認証ポリシー
AuthenticationInteractionManagement認証インタラクション
AuthenticationTransactionManagement認証トランザクション
FederationConfigurationManagementフェデレーション設定
IdentityVerificationConfigManagement身元確認設定
セキュリティSecurityEventManagementセキュリティイベント
SecurityEventHookManagementセキュリティイベントフック
SecurityEventHookConfigurationManagementフック設定
AuditLogManagement監査ログ
招待TenantInvitationManagementテナント招待

2. 組織レベルAPI(Organization Manager)​

組織単位でリソースを管理。組織管理者が使用。

URL: /v1/management/organizations/{org-id}/tenants/{tenant-id}/...

カテゴリAPI管理対象
基本設定OrgTenantManagement組織配下のテナント
OrgClientManagement組織配下のクライアント
OrgUserManagement組織配下のユーザー
OrgContactVerificationChallengeManagement連絡先確認チャレンジ(Email/電話番号のセルフサービス確認・変更)
OrgRoleManagement組織配下のロール
OrgPermissionManagement組織配下の権限
認証設定OrgAuthorizationServerManagement認可サーバー設定
OrgAuthenticationConfigManagement認証設定
OrgAuthenticationPolicyConfigManagement認証ポリシー
OrgAuthenticationInteractionManagement認証インタラクション
OrgAuthenticationTransactionManagement認証トランザクション
OrgFederationConfigManagementフェデレーション設定
OrgIdentityVerificationConfigManagement身元確認設定
認可管理OrgGrantManagementGrant(認可付与)
セキュリティOrgSecurityEventManagementセキュリティイベント
OrgSecurityEventHookManagementセキュリティイベントフック
OrgSecurityEventHookConfigManagementフック設定
OrgAuditLogManagement監査ログ

3. Admin API​

システム全体の管理。システム管理者が使用。

URL: /v1/admin/...

API管理対象用途
IdpServerStarterシステム初期化初回セットアップ
IdpServerOperationシステム運用データクリーンアップ

使い分けガイド​

いつシステムレベルAPIを使うか?​

  • ✅ テナント単位でリソースを管理
  • ✅ システム管理者が実行
  • ✅ 全テナントへのアクセス権限あり

例: SaaS運営者が顧客(テナント)のクライアント設定を管理


いつ組織レベルAPIを使うか?​

  • ✅ 組織単位でリソースを管理
  • ✅ 組織管理者が実行
  • ✅ 組織配下のテナントのみアクセス可能

例: 企業グループの管理者が子会社(テナント)のユーザーを管理


いつAdmin APIを使うか?​

  • ✅ システム全体の初期化・運用

例: idp-serverの初回セットアップ、データクリーンアップ


CRUD操作の標準パターン​

すべての管理APIは以下の標準操作をサポート:

操作HTTPメソッドエンドポイント必要権限
CreatePOST/.../{resource}{resource}:write
Read (List)GET/.../{resource}{resource}:read
Read (Get)GET/.../{resource}/{id}{resource}:read
UpdatePUT/.../{resource}/{id}{resource}:update
DeleteDELETE/.../{resource}/{id}{resource}:delete

例(Client Management):

POST   /v1/management/tenants/{tenant-id}/clients         # client:write
GET /v1/management/tenants/{tenant-id}/clients # client:read
GET /v1/management/tenants/{tenant-id}/clients/{id} # client:read
PUT /v1/management/tenants/{tenant-id}/clients/{id} # client:update
DELETE /v1/management/tenants/{tenant-id}/clients/{id} # client:delete

実装ガイドへのリンク​

汎用パターン​

個別機能​


次のステップ​

✅ 管理APIの全体像を理解した!

📖 実装する場合​


情報源: libs/idp-server-use-cases/src/main/java/org/idp/server/usecases/control_plane/ 最終更新: 2025-10-12