Suporte ao Provisionamento JIT Social com Suporte à Associação do Grupo

Use a API para gerenciar novos usuários do domínio de identidades com provisionamento de usuário JIT (Just-In-Time) social para usuários iniciantes.

A API REST do OCI agora suporta o Provisionamento JIT social, para automatizar a criação da conta do usuário quando o usuário tenta acessar domínios de identidade pela primeira vez quando o usuário não existe no domínio de identidades. O provisionamento do JIT Social também suporta a concessão de associação ao grupo como parte do provisionamento do usuário.

Definições de Atributos

  • socialJitProvisioningEnabled: Você pode ativar/desativar o JIT social controlando esse atributo social.
  • jitProvGroupStaticListEnabled: Quando o JIT está ativado, você pode definir esse atributo como verdadeiro para indicar que os grupos de provisionamento de usuários do JIT social devem ser designados de uma lista estática.
  • jitProvAssignedGroups: Este atributo contém uma lista de grupos a serem designados a cada usuário provisionado pelo JIT social. O provisionamento de usuário JIT aplica essa lista estática quando jitProvGroupStaticListEnabled é definido como verdadeiro.

Exemplos

Alternar suporte ao Social JIT GroupMembership: PATCH /admin/v1/SocialIdentityProviders/{idpID}

Exemplo de corpo de solicitação:
{
  "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"
  ]
}
Resposta de amostra:
{
    "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
}

Extrair Associação de Grupo para IDP ativado para JIT: GET /admin/v1/SocialIdentityProviders/{idpId}?attributes=jitProvAssignedGroups

Resposta de amostra:
{
    "id": "<identity-provider-id>",
    "jitProvAssignedGroups": [
        {
            "value": "<idcs-group-id>",
            "$ref": "https://<domain-id>/admin/v1/Groups/"<idcs-group-id>"
        }
    ],
    "name": "Google"
}

Remova o GUID de grupo específico da lista de membros do IDP ativados para JIT: PATCH /admin/v1/SocialIdentityProviders/{idpId}

Exemplo de corpo de solicitação:
{
  "schemas": [
    "urn:ietf:params:scim:api:messages:2.0:PatchOp"
  ],
  "Operations": [
    {
      "op": "remove",
      "path": "jitProvAssignedGroups[value eq \"<idcs-group-id>\"]"
    }
  ]
}
Amostra de corpo de resposta:
{
    "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
}

Remover lista de Membros do Grupo para IDP ativado por IDP: PATCH /admin/v1/SocialIdentityProviders/{idpId}

Exemplo de corpo de solicitação:
{
  "schemas": [
    "urn:ietf:params:scim:api:messages:2.0:PatchOp"
  ],
  "Operations": [
    {
      "op": "remove",
      "path": "jitProvAssignedGroups"
    }
  ]
}
Amostra de corpo de resposta:
{
    "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
}