VMware Cloud Director 10.4.1 開始,可以使用 VMware Cloud Director API 將個別使用者從一個身分識別提供者 (IDP) 重新對應到另一個身分識別提供者 (IDP)。

備註: VMware Cloud Director 將開始棄用本機使用者。 VMware Cloud Director 在本機使用者棄用時繼續完全支援使用這些本機使用者。請參閱 VMware Cloud Director 10.4.1 版本說明

如需使用 VMware Cloud Director 使用者介面在身分識別提供者之間大量重新對應使用者的相關資訊,請參閱使用 VMware Cloud Director Service Provider Admin Portal在身分識別提供者之間重新對應使用者

必要條件

  • 確認您的角色包括群組/使用者:管理權限。
  • 確認組織設定了要在其間重新對應的身分識別提供者類型。

程序

  1. /cloudapi/1.0.0/users 發出 GET 要求。

    VMware Cloud Director 傳回組織內的使用者清單。

  2. 找到要重新對應的使用者,然後擷取使用者資訊。
    GET /cloudapi/1.0.0/users/{user_id}
  3. /cloudapi/1.0.0/users/{user_id} 發出 PUT 要求。

    若要重新對應使用者,必須變更 providerType 欄位以識別新的 IDP。VMware Cloud Director 支援 SAMLLDAPOAUTHLOCAL 值。此外,為了符合使用者重新對應到的 IDP 中的使用者名稱,可以修改使用者名稱。使用者透過新的登入流程登入時,如果 VMware Cloud Director 要繼續將使用者的資產與使用者關聯,則使用者的識別碼必須保持不變。

    重要:

    如果要重新對應到提供者類型 LDAPVMware Cloud Director 會在交付作業之前透過 LDAP 伺服器驗證使用者名稱。如果 VMware Cloud Director 因任何原因 (例如,與 LDAP 伺服器的連線中斷) 而未完成此步驟,則重新對應將失敗。

    如果要透過指定提供者類型 LOCAL 將使用者重新對應為本機使用者,與建立使用者的程序類似,必須提供密碼。

  4. 驗證 VMware Cloud Director 是否傳回 OK 回應,在回應本文中指定了新重新對應的提供者類型。

範例:

若要尋找要重新對應的使用者,請發出以下要求。

要求:
GET /cloudapi/1.0.0/users?pageSize=10 HTTP/1.1
Host: 127.0.0.1:8443
Accept: application/json;version=37.1
範例回應:
{
  "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"
    }
  ]
}

若要將 testuserLOCAL 重新對應到 LDAP,請發出 PUT 要求。

要求:
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"
}
範例回應:
{
  "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"
}