分享方式:


為客戶重設使用者密碼

重設密碼類似于為您的客戶更新現有使用者帳戶中的其他詳細資料。

必要條件

  • 認證,如合作夥伴中心驗證所述。 此案例僅支援使用「應用程式+使用者」認證來進行驗證。

  • 客戶識別碼 (customer-tenant-id)。 如果您不知道客戶的識別碼,您可以在合作夥伴中心 查閱 從合作夥伴中心首頁選取 [客戶 ] 工作區。 從 [客戶] 清單中 選取客戶,然後選取 [ 帳戶 ]。 在客戶的 [帳戶] 頁面上,在 [客戶帳戶詳細資料] 區段中 尋找 Microsoft 識別碼 。 Microsoft 識別碼與客戶識別碼 (customer-tenant-id) 相同。

GDAP 角色

您至少需要下列其中一個 GDAP 角色:

  • 使用者管理員
  • 特殊權限驗證管理員

C#

若要重設指定客戶使用者的密碼,請先擷取指定的客戶識別碼和目標使用者。 然後,建立新的 CustomerUser 物件,其中包含現有客戶的資訊,但使用新的 PasswordProfile 物件。 然後,使用您的 IAggregatePartner.Customers 集合並呼叫 ById() 方法。 然後呼叫 Users 屬性、 ById() 方法,然後 呼叫 Patch 方法。

// IAggregatePartner partnerOperations;
// string selectedCustomerId;
// CustomerUser specifiedUser;

var selectedCustomer = partnerOperations.Customers.ById(selectedCustomerId).Get();
var userToUpdate = new CustomerUser()
   {
      PasswordProfile = new PasswordProfile() { ForceChangePassword = true, Password = "newPassword" },
      DisplayName = "Roger Federer",
      FirstName = "Roger",
      LastName = "Federer",
      UsageLocation = "US",
      UserPrincipalName = Guid.NewGuid().ToString("N") + "@" + selectedCustomer.CompanyProfile.Domain.ToString()
   };

// update customer user information
User updatedCustomerUserInfo = partnerOperations.Customers.ById(selectedCustomerId).Users.ById(specifiedUser.Id).Patch(userToUpdate);

範例

主控台測試應用程式 專案 :PartnerSDK.FeatureSamples 類別 :CustomerUserUpdate.cs

REST 要求

要求語法

方法 要求 URI
PATCH {baseURL} /v1/customers/{customer-tenant-id}/users/{user-id}/resetpassword HTTP/1.1

URI 參數

使用下列查詢參數來識別正確的客戶。

名稱 類型​​ 必填 描述
customer-tenant-id guid Y 此值是 GUID 格式的客戶 租使用者識別碼 ,可讓轉銷商篩選屬於轉銷商之指定客戶的結果。
user-id guid Y 值是 GUID 格式 的使用者識別碼 ,屬於單一使用者帳戶。

要求標頭

如需詳細資訊,請參閱合作夥伴中心 REST 標頭

要求範例

PATCH https://api.partnercenter.microsoft.com/v1/customers/<customer-tenant-id>/users/<user-id>/resetpassword HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: b1317092-f087-471e-a637-f66523b2b94c
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
{
     "passwordProfile":{
        password: "Renew456*",
        forceChangePassword: true
      },

      "attributes": {
        "objectType": "CustomerUser"
      }
}

REST 回應

如果成功,這個方法會傳回使用者資訊,以及更新的密碼資訊。

回應成功和錯誤碼

每個回應都隨附 HTTP 狀態碼,會指出成功與否以及其他的偵錯資訊。 請使用網路追蹤工具來讀取此錯誤碼、錯誤類型和其他參數。 如需完整清單,請參閱錯誤碼

回應範例

HTTP/1.1 200 OK
Content-Length: 31942
Content-Type: application/json
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
MS-RequestId: b1317092-f087-471e-a637-f66523b2b94c
Date: June 24 2016 22:00:25 PST
{
  "usageLocation": "AX",
  "id": "95794928-9abe-4548-8b43-50ffc20b9404",
  "userPrincipalName": "aaaa4@abcdefgh1234.onmicrosoft.com",
  "firstName": "aaaa4",
  "lastName": "aaaa4",
  "displayName": "aaaa4",
  "passwordProfile": {
    "forceChangePassword": false,
    "password": "Renew456*"
  },
  "lastDirectorySyncTime": null,
  "userDomainType": "none",
  "state": "active",
  "softDeletionTime": null,
  "links": {
    "self": {
      "uri": "/customers/eebd1b55-5360-4438-a11d-5c06918c3014/users/95794928-9abe-4548-8b43-50ffc20b9404",
      "method": "GET",
      "headers": [

      ]
    }
  },
  "attributes": {
    "objectType": "CustomerUser"
  }
}