グループ・メンバーシップ・サポートによるソーシャルJITプロビジョニングのサポート
APIを使用して、初めてユーザー向けにソーシャル・ジャストインタイム(JIT)ユーザー・プロビジョニングを行う新しいアイデンティティ・ドメイン・ユーザーを管理します。
OCI REST APIでは、ソーシャルJITプロビジョニングがサポートされるようになり、ユーザーがアイデンティティ・ドメインに存在しないときに最初にアイデンティティ・ドメインにアクセスしようとしたときに、ユーザー・アカウントの作成が自動化されます。ソーシャルJITプロビジョニングでは、ユーザー・プロビジョニングの一部としてグループ・メンバーシップの付与もサポートされます。
属性定義
- socialJitProvisioningEnabled: このソーシャル属性を制御することで、ソーシャルJITを有効または無効にできます。
- jitProvGroupStaticListEnabled: JITが有効な場合、この属性をtrueに設定して、ソーシャルJITユーザー・プロビジョニング・グループを静的リストから割り当てるように指定できます。
- jitProvAssignedGroups: この属性には、各ソーシャルJITプロビジョニング・ユーザーに割り当てられるグループのリストが含まれます。JITユーザー・プロビジョニングでは、jitProvGroupStaticListEnabledがtrueに設定されている場合、この静的リストが適用されます。
例
Social JIT GroupMembershipサポートの切替え: PATCH /admin/v1/SocialIdentityProviders/{idpID}
要求本文の例:
{
"Operations": [
{
"op": "replace",
"path": "socialJitProvisioningEnabled",
"value": true
},
{
"op": "replace",
"path": "jitProvGroupStaticListEnabled",
"value": true
},
{
"op": "add",
"path": "jitProvAssignedGroups",
"value": [
{
"value": “<identitydomain-group-id>”
}
]
}
],
"schemas": [
"urn:ietf:params:scim:api:messages:2.0:PatchOp"
]
}
サンプル・レスポンス:
{
"idcsCreatedBy": {
"type": "User",
"display": "admin opc",
"value": “<user-id>",
"$ref": "https://<domainURL>/admin/v1/Users/<user-id>"
},
"id": "<identity-provider-id>",
"meta": {
"created": "2024-04-29T17:26:15.646Z",
"lastModified": "2024-06-06T22:03:43.284Z",
"version": "<version number>",
"resourceType": "IdentityProvider",
"location": "https://<domainURL> /admin/v1/IdentityProviders/<identity-provider-id>"
},
"enabled": true,
"idcsLastModifiedBy": {
"value": "<user-id>",
"display": "admin opc",
"type": "User",
"$ref": "https://<domainURL>/admin/v1/Users/15ae5123456123456aa123456xxx123456"
},
"partnerName": "Google",
"ocid": “<domain-ocid>",
"socialJitProvisioningEnabled": true,
"jitProvGroupStaticListEnabled": true,
"accountLinkingEnabled": true,
"registrationEnabled": true,
"serviceProviderName": "Google",
"consumerSecret": "clientSecret12345",
"idAttribute": "email",
"consumerKey": "clientID12345",
"jitProvAssignedGroups": [
{
"value": "<idcs-group-id>",
"$ref": "https://<domain-id>/admin/v1/Groups/"<idcs-group-id>"
}
],
"schemas": [
"urn:ietf:params:scim:schemas:oracle:idcs:SocialIdentityProvider"
],
"name": "Google",
"showOnLogin": true
}
JIT対応IDPのグループ・メンバーシップのフェッチ: GET /admin/v1/SocialIdentityProviders/{idpId}?attributes=jitProvAssignedGroups
サンプル・レスポンス:
{
"id": "<identity-provider-id>",
"jitProvAssignedGroups": [
{
"value": "<idcs-group-id>",
"$ref": "https://<domain-id>/admin/v1/Groups/"<idcs-group-id>"
}
],
"name": "Google"
}
JIT対応IDPメンバーシップ・リストから特定のグループGUIDを削除します: PATCH /admin/v1/SocialIdentityProviders/{idpId}
要求本文の例:
{
"schemas": [
"urn:ietf:params:scim:api:messages:2.0:PatchOp"
],
"Operations": [
{
"op": "remove",
"path": "jitProvAssignedGroups[value eq \"<idcs-group-id>\"]"
}
]
}
レスポンス本文の例:
{
"idcsCreatedBy": {
"type": "User",
"display": "admin opc",
"value": “<user-id>",
"$ref": "https://<domainURL>/admin/v1/Users/<user-id>"
},
"id": "<identity-provider-id>",
"meta": {
"created": "2024-04-29T17:26:15.646Z",
"lastModified": "2024-06-06T22:16:47.515Z",
"version": "<version number>",
"resourceType": "IdentityProvider",
"location": "https://<domainURL> /admin/v1/IdentityProviders/<identity-provider-id>"
},
"enabled": true,
"idcsLastModifiedBy": {
"value": "<user-id>",
"display": "admin opc",
"type": "User",
"$ref": "https://<domainURL>/admin/v1/Users/15ae5123456123456aa123456xxx123456"
},
"partnerName": "Google",
"ocid": “<domain-ocid>",
"socialJitProvisioningEnabled": true,
"jitProvGroupStaticListEnabled": true,
"accountLinkingEnabled": true,
"registrationEnabled": true,
"serviceProviderName": "Google",
"consumerSecret": "clientSecret12345",
"idAttribute": "email",
"consumerKey": "clientID12345",
"schemas": [
"urn:ietf:params:scim:schemas:oracle:idcs:SocialIdentityProvider"
],
"name": "Google",
"showOnLogin": true
}
IDP対応IDPのグループ・メンバーシップ・リストの削除: PATCH /admin/v1/SocialIdentityProviders/{idpId}
要求本文の例:
{
"schemas": [
"urn:ietf:params:scim:api:messages:2.0:PatchOp"
],
"Operations": [
{
"op": "remove",
"path": "jitProvAssignedGroups"
}
]
}
レスポンス本文の例:
{
"idcsCreatedBy": {
"type": "User",
"display": "admin opc",
"value": “<user-id>",
"$ref": "https://<domainURL>/admin/v1/Users/<user-id>"
},
"id": "<identity-provider-id>",
"meta": {
"created": "2024-04-29T17:26:15.646Z",
"lastModified": "2024-06-06T22:16:47.515Z",
"version": "<version number>",
"resourceType": "IdentityProvider",
"location": "https://<domainURL> /admin/v1/IdentityProviders/<identity-provider-id>"
},
"enabled": true,
"idcsLastModifiedBy": {
"value": "<user-id>",
"display": "admin opc",
"type": "User",
"$ref": "https://<domainURL>/admin/v1/Users/15ae5123456123456aa123456xxx123456"
},
"partnerName": "Google",
"ocid": “<domain-ocid>",
"socialJitProvisioningEnabled": true,
"jitProvGroupStaticListEnabled": true,
"accountLinkingEnabled": true,
"registrationEnabled": true,
"serviceProviderName": "Google",
"consumerSecret": "clientSecret12345",
"idAttribute": "email",
"consumerKey": "clientID12345",
"schemas": [
"urn:ietf:params:scim:schemas:oracle:idcs:SocialIdentityProvider"
],
"name": "Google",
"showOnLogin": true
}