為客戶重設使用者密碼
重設密碼類似于為您的客戶更新現有使用者帳戶中的其他詳細資料。
必要條件
認證,如合作夥伴中心驗證所述。 此案例僅支援使用「應用程式+使用者」認證來進行驗證。
客戶識別碼 (
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"
}
}