idp-server コントロールプレーン テナント管理 API (1.0.0)
Download OpenAPI specification:Download
テナントおよび認可サーバーの管理API仕様書
Create tenant within organization
特定の組織に新しいテナントを作成します
path Parameters
| organization-id required | string <uuid> 組織の識別子 |
query Parameters
| dry_run | boolean Default: false trueの場合、リクエストの検証のみで実行はされません |
Request Body schema: application/jsonrequired
required | object |
required | object (OpenIDConfiguration) |
Responses
Request samples
- Payload
Content type
application/json
{- "tenant": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "description": "string",
- "authorization_provider": "string",
- "ui_config": {
- "signup_page": "/auth-views/signup/index.html",
- "signin_page": "/auth-views/signin/index.html"
}, - "cors_config": {
- "allow_origins": [ ],
- "allow_headers": "Authorization, Content-Type, Accept, x-device-id",
- "allow_methods": "GET, POST, PUT, PATCH, DELETE, OPTIONS",
- "allow_credentials": true
}, - "session_config": {
- "cookie_name": null,
- "cookie_domain": null,
- "cookie_same_site": "None",
- "use_secure_cookie": true,
- "use_http_only_cookie": true,
- "cookie_path": "/",
- "timeout_seconds": 3600,
- "switch_policy": "STRICT"
}, - "security_event_log_config": {
- "format": "structured_json",
- "debug_logging": false,
- "stage": "processed",
- "include_user_id": true,
- "include_user_name": true,
- "include_user_ex_sub": true,
- "include_client_id": true,
- "include_ip_address": true,
- "include_user_agent": true,
- "include_event_detail": false,
- "include_user_detail": false,
- "include_user_pii": false,
- "allowed_user_pii_keys": "",
- "include_trace_context": false,
- "service_name": "idp-server",
- "custom_tags": "",
- "tracing_enabled": false,
- "persistence_enabled": false,
- "statistics_enabled": false,
- "detail_scrub_keys": "authorization,cookie,password,secret,token,access_token,refresh_token,api_key,api_secret"
}, - "security_event_user_config": {
- "include_id": true,
- "include_name": true,
- "include_external_user_id": true,
- "include_email": false,
- "include_phone_number": false,
- "include_given_name": false,
- "include_family_name": false,
- "include_preferred_username": false,
- "include_profile": false,
- "include_picture": false,
- "include_website": false,
- "include_gender": false,
- "include_birthdate": false,
- "include_zoneinfo": false,
- "include_locale": false,
- "include_address": false,
- "include_roles": false,
- "include_permissions": false,
- "include_current_tenant": false,
- "include_assigned_tenants": false,
- "include_verified_claims": false,
- "include_status": true,
- "include_authentication_device_ids": false
}, - "identity_policy_config": {
- "identity_unique_key_type": "EMAIL_OR_EXTERNAL_USER_ID",
- "password_policy": {
- "min_length": 8,
- "max_length": 72,
- "require_uppercase": false,
- "require_lowercase": false,
- "require_number": false,
- "require_special_char": false,
- "max_history": 0
}, - "authentication_device_rule": {
- "max_devices": 5,
- "required_identity_verification": false,
- "authentication_type": "device_secret_jwt",
- "issue_device_secret": true,
- "device_secret_algorithm": "HS256",
- "device_secret_expires_in_seconds": 31536000
}
}
}, - "authorization_server": {
- "jwk": "string",
- "scopes_supported": [
- "string"
], - "response_types_supported": [
- "code"
], - "response_modes_supported": [
- "query",
- "fragment"
], - "grant_types_supported": [
- "authorization_code",
- "implicit"
], - "acr_values_supported": [
- "string"
], - "subject_types_supported": [
- "pairwise"
], - "id_token_signing_alg_values_supported": [
- "none"
], - "id_token_encryption_alg_values_supported": [
- "RSA1_5"
], - "id_token_encryption_enc_values_supported": [
- "A128CBC-HS256"
], - "userinfo_signing_alg_values_supported": [
- "none"
], - "userinfo_encryption_alg_values_supported": [
- "RSA1_5"
], - "userinfo_encryption_enc_values_supported": [
- "A128CBC-HS256"
], - "request_object_signing_alg_values_supported": [
- "none"
], - "request_object_encryption_alg_values_supported": [
- "RSA1_5"
], - "request_object_encryption_enc_values_supported": [
- "A128CBC-HS256"
], - "token_endpoint_auth_methods_supported": [
- "client_secret_post"
], - "token_endpoint_auth_signing_alg_values_supported": [
- "none"
], - "display_values_supported": [
- "page"
], - "claim_types_supported": [
- "normal"
], - "claims_supported": [
- "sub",
- "iss",
- "auth_time",
- "acr",
- "name",
- "given_name",
- "family_name",
- "nickname",
- "profile",
- "picture",
- "website",
- "email",
- "email_verified",
- "locale",
- "zoneinfo",
- "birthdate",
- "gender",
- "preferred_username",
- "middle_name",
- "updated_at",
- "address",
- "phone_number",
- "phone_number_verified"
], - "claims_locales_supported": [
- "string"
], - "ui_locales_supported": [
- "string"
], - "claims_parameter_supported": true,
- "request_parameter_supported": false,
- "request_uri_parameter_supported": false,
- "require_request_uri_registration": false,
- "revocation_endpoint_auth_methods_supported": [
- "client_secret_post"
], - "revocation_endpoint_auth_signing_alg_values_supported": [
- "none"
], - "introspection_endpoint_auth_methods_supported": [
- "none"
], - "introspection_endpoint_auth_signing_alg_values_supported": [
- "none"
], - "code_challenge_methods_supported": [
- "plain"
], - "extension": {
- "access_token_type": "opaque",
- "authorization_code_valid_duration": 600,
- "token_signed_key_id": "string",
- "id_token_signed_key_id": "string",
- "access_token_duration": 1800,
- "refresh_token_duration": 3600,
- "refresh_token_strategy": "FIXED",
- "rotate_refresh_token": true,
- "id_token_duration": 3600,
- "id_token_strict_mode": false,
- "default_max_age": 86400,
- "authorization_response_duration": 60,
- "backchannel_authentication_request_expires_in": 300,
- "backchannel_authentication_polling_interval": 5,
- "required_backchannel_auth_user_code": false,
- "backchannel_auth_user_code_type": "password",
- "default_ciba_authentication_interaction_type": "authentication-device-notification",
- "oauth_authorization_request_expires_in": 1800,
- "fapi_baseline_scopes": [
- "string"
], - "fapi_advance_scopes": [
- "string"
], - "required_identity_verification_scopes": [
- "string"
], - "custom_claims_scope_mapping": true,
- "access_token_selective_user_custom_properties": true,
- "access_token_verified_claims": true,
- "access_token_selective_verified_claims": true
}
}
}Response samples
- 201
- 400
- 403
- 404
Content type
application/json
{- "dry_run": true,
- "result": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "type": "BUSINESS",
- "description": "string",
- "authorization_provider": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z"
}
}List tenants within organization
特定の組織のテナント一覧を取得します
path Parameters
| organization-id required | string <uuid> 組織の識別子 |
query Parameters
| limit | integer [ 1 .. 1000 ] Default: 20 返すアイテムの最大数 |
| offset | integer >= 0 Default: 0 アイテムを返す開始インデックス |
Responses
Response samples
- 200
- 403
- 404
Content type
application/json
{- "list": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "type": "BUSINESS",
- "description": "string",
- "authorization_provider": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z"
}
]
}Get tenant within organization
組織の特定のテナントを取得します
path Parameters
| organization-id required | string <uuid> 組織の識別子 |
| tenant-id required | string テナントの識別子 |
Responses
Response samples
- 200
- 403
- 404
Content type
application/json
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "type": "BUSINESS",
- "description": "string",
- "authorization_provider": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z"
}Update tenant within organization
組織の特定のテナントを更新します
path Parameters
| organization-id required | string <uuid> 組織の識別子 |
| tenant-id required | string テナントの識別子 |
query Parameters
| dry_run | boolean Default: false trueの場合、リクエストの検証のみで実行はされません |
Request Body schema: application/jsonrequired
| name | string <= 255 characters Tenant name | ||||||||||||||||
| tenant_type | string Enum: "BUSINESS" "PERSONAL" Tenant type | ||||||||||||||||
| description | string Human-readable description of the tenant | ||||||||||||||||
object (UIConfiguration) | |||||||||||||||||
object (CorsConfiguration) | |||||||||||||||||
object (SessionConfiguration) セッション管理とCookie設定。 構成パターン別の推奨設定:
サブドメイン間はSame-Site扱い: idp.example.comとapp.example.comはCross-Originだが、Same-Site(eTLD+1が同じ)。 SameSite=Laxでも全リクエストでCookieが送信される。 | |||||||||||||||||
object (SecurityEventLogConfiguration) | |||||||||||||||||
object (SecurityEventUserAttributeConfiguration) セキュリティイベントに含めるユーザー属性の制御 | |||||||||||||||||
object (IdentityPolicyConfiguration) ユーザー識別ポリシーとパスワードポリシーの設定
|
Responses
Request samples
- Payload
Content type
application/json
{- "name": "string",
- "tenant_type": "BUSINESS",
- "description": "string",
- "ui_config": {
- "signup_page": "/auth-views/signup/index.html",
- "signin_page": "/auth-views/signin/index.html"
}, - "cors_config": {
- "allow_origins": [ ],
- "allow_headers": "Authorization, Content-Type, Accept, x-device-id",
- "allow_methods": "GET, POST, PUT, PATCH, DELETE, OPTIONS",
- "allow_credentials": true
}, - "session_config": {
- "cookie_name": null,
- "cookie_domain": null,
- "cookie_same_site": "None",
- "use_secure_cookie": true,
- "use_http_only_cookie": true,
- "cookie_path": "/",
- "timeout_seconds": 3600,
- "switch_policy": "STRICT"
}, - "security_event_log_config": {
- "format": "structured_json",
- "debug_logging": false,
- "stage": "processed",
- "include_user_id": true,
- "include_user_name": true,
- "include_user_ex_sub": true,
- "include_client_id": true,
- "include_ip_address": true,
- "include_user_agent": true,
- "include_event_detail": false,
- "include_user_detail": false,
- "include_user_pii": false,
- "allowed_user_pii_keys": "",
- "include_trace_context": false,
- "service_name": "idp-server",
- "custom_tags": "",
- "tracing_enabled": false,
- "persistence_enabled": false,
- "statistics_enabled": false,
- "detail_scrub_keys": "authorization,cookie,password,secret,token,access_token,refresh_token,api_key,api_secret"
}, - "security_event_user_config": {
- "include_id": true,
- "include_name": true,
- "include_external_user_id": true,
- "include_email": false,
- "include_phone_number": false,
- "include_given_name": false,
- "include_family_name": false,
- "include_preferred_username": false,
- "include_profile": false,
- "include_picture": false,
- "include_website": false,
- "include_gender": false,
- "include_birthdate": false,
- "include_zoneinfo": false,
- "include_locale": false,
- "include_address": false,
- "include_roles": false,
- "include_permissions": false,
- "include_current_tenant": false,
- "include_assigned_tenants": false,
- "include_verified_claims": false,
- "include_status": true,
- "include_authentication_device_ids": false
}, - "identity_policy_config": {
- "identity_unique_key_type": "EMAIL_OR_EXTERNAL_USER_ID",
- "password_policy": {
- "min_length": 8,
- "max_length": 72,
- "require_uppercase": false,
- "require_lowercase": false,
- "require_number": false,
- "require_special_char": false,
- "max_history": 0
}, - "authentication_device_rule": {
- "max_devices": 5,
- "required_identity_verification": false,
- "authentication_type": "device_secret_jwt",
- "issue_device_secret": true,
- "device_secret_algorithm": "HS256",
- "device_secret_expires_in_seconds": 31536000
}
}
}Response samples
- 200
- 400
- 403
- 404
Content type
application/json
{- "dry_run": true,
- "result": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "type": "BUSINESS",
- "description": "string",
- "authorization_provider": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z"
}
}Delete tenant within organization
組織の特定のテナントを削除します
path Parameters
| organization-id required | string <uuid> 組織の識別子 |
| tenant-id required | string テナントの識別子 |
query Parameters
| dry_run | boolean Default: false trueの場合、リクエストの検証のみで実行はされません |
Responses
Response samples
- 403
- 404
Content type
application/json
{- "error": "string",
- "error_description": "string",
- "error_messages": [
- "string"
], - "error_details": { }
}