Começando com o VMware Cloud Director 10.4.1 você pode remapear usuários individuais de um provedor de identidade (IDP) para outro usando o API do VMware Cloud Director.

Observação: O VMware Cloud Director inicia o processo de descontinuação para usuários locais. O VMware Cloud Director continua a oferecer suporte completo ao uso de usuários locais enquanto eles estão sendo descontinuados. Consulte Notas da versão do VMware Cloud Director 10.4.1.

Para obter informações sobre o remapeamento em massa de usuários entre provedores de identidade usando a UI do VMware Cloud Director, consulte Remapear usuários entre provedores de identidade usando seu VMware Cloud Director Tenant Portal.

Pré-requisitos

  • Verifique se a sua função inclui o direito Grupo/Usuário: Gerenciar.
  • Verifique se a organização está configurada com os tipos de provedor de identidade que você deseja remapear entre.

Procedimento

  1. Faça uma solicitação GET para /cloudapi/1.0.0/users.

    O VMware Cloud Director retorna uma lista dos usuários na organização.

  2. Localize o usuário que você deseja remapear e recupere as informações do usuário.
    GET /cloudapi/1.0.0/users/{user_id}
  3. Faça uma solicitação PUT para /cloudapi/1.0.0/users/{user_id}.

    Para remapear um usuário, você deve alterar o campo providerType para identificar o novo IDP. O VMware Cloud Director suporta os valores SAML, LDAP, OAUTH e LOCAL. Além disso, para corresponder ao nome de usuário no IDP ao qual o usuário está remapeando, é possível modificar o nome de usuário. Para o VMware Cloud Director continuar a associar os ativos do usuário ao usuário quando ele efetua login por meio do novo fluxo de login, o ID de usuário deve permanecer inalterado.

    Importante:

    Se você estiver remapeando para o tipo de provedor LDAP, o VMware Cloud Director validará o nome de usuário com o servidor LDAP antes de confirmar a operação. Se o VMware Cloud Director não concluir essa etapa por qualquer motivo, por exemplo, perda de conectividade com o servidor LDAP, o remapeamento falhará.

    Ao remapear um usuário para ser um usuário local, especificando o tipo de provedor LOCAL, semelhante ao processo de criação de um usuário, você deverá fornecer uma senha.

  4. Verifique se o VMware Cloud Director retorna uma resposta OK especificando o tipo de provedor recém-mapeado no corpo da resposta.

Exemplo:

Para encontrar o usuário que você deseja remapear, faça a seguinte solicitação.

Solicitação:
GET /cloudapi/1.0.0/users?pageSize=10 HTTP/1.1
Host: 127.0.0.1:8443
Accept: application/json;version=37.1
Resposta de amostra:
{
  "resultTotal": 2,
  "pageCount": 1,
  "page": 1,
  "pageSize": 10,
  "associations": null,
  "values": [
    ...,
    {
      "username": "testuser",
      "fullName": "",
      "description": null,
      "id": "urn:vcloud:user:2b038199-0063-4c13-9bba-a3b58d775785",
      "roleEntityRefs": [
        {
          "name": "vApp Author",
          "id": "urn:vcloud:role:85f69506-52a5-3e20-869a-ea18d667e19e"
        }
      ],
      "orgEntityRef": {
        "name": "testorg",
        "id": "urn:vcloud:org:806f0d87-c8b9-47f5-bfbe-3dc73a4c0d14"
      },
      "password": "******",
      "email": "",
      "nameInSource": "testuser",
      "enabled": true,
      "isGroupRole": false,
      "providerType": "LOCAL"
    }
  ]
}

Para remapear testuser do LOCAL ao LDAP, faça uma solicitação PUT.

Solicitação:
PUT /cloudapi/1.0.0/users/urn:vcloud:user:2b038199-0063-4c13-9bba-a3b58d775785 HTTP/1.1
Host: 127.0.0.1:8443
Accept: application/json;version=37.1
Content-Type: application/json;version=37.1

Body: {
  "username": "testuser",
  "fullName": "",
  "description": null,
  "id": "urn:vcloud:user:2b038199-0063-4c13-9bba-a3b58d775785",
  "roleEntityRefs": [
    {
      "name": "vApp Author",
      "id": "urn:vcloud:role:85f69506-52a5-3e20-869a-ea18d667e19e"
    }
  ],
  "orgEntityRef": {
    "name": "testorg",
    "id": "urn:vcloud:org:806f0d87-c8b9-47f5-bfbe-3dc73a4c0d14"
  },
  "password": "******",
  "email": "",
  "nameInSource": "testuser",
  "enabled": true,
  "isGroupRole": false,
  "providerType": "LDAP"
}
Resposta de amostra:
{
  "username": "testuser",
  "fullName": "",
  "description": null,
  "id": "urn:vcloud:user:2b038199-0063-4c13-9bba-a3b58d775785",
  "roleEntityRefs": [
    {
      "name": "vApp Author",
      "id": "urn:vcloud:role:85f69506-52a5-3e20-869a-ea18d667e19e"
    }
  ],
  "orgEntityRef": {
    "name": "testorg",
    "id": "urn:vcloud:org:806f0d87-c8b9-47f5-bfbe-3dc73a4c0d14"
  },
  "password": null,
  "email": "",
  "nameInSource": "\\63\\36\\62\\35\\30\\66\\35\\63\\2D\\61\\62\\30\\35\\2D\\34\\37\\64\\33\\2D\\62\\61\\64\\34\\2D\\39\\32\\64\\35\\32\\37\\30\\36\\62\\39\\39\\33",
  "enabled": true,
  "isGroupRole": false,
  "providerType": "LDAP"
}