2017-04-06 29 views
1

我們正在嘗試在聯合域上創建用戶,但不發送JSON字段onPremisesImmutableId。如Create User頁面所述,此字段在這種情況下成爲強制性的。Microsoft Graph - 在聯合域上創建沒有onPremisesImmutableId的用戶

當我們發出這樣的請求時,HTTP響應狀態代碼在響應有效載荷中沒有正確的消息時奇怪地爲400。以下是一個示例。

是否有可能獲得關於爲什麼請求失敗的準確信息?我們要問的原因是,在將這個域聯合起來之前,同樣的請求工作得很好,但現在不再了。我們花了好幾個小時才弄清楚出了什麼問題,並且文件最終給出了一個線索。

Request: 
Invoke-WebRequest -Method POST https://graph.microsoft.com/v1.0/users -Headers @{"Authorization"="Bearer <access_token>"} -Body '{"accountEnabled":true,"displayName": "displayName-value","mailNickname": "mailNickname-value", "userPrincipalName": "blah-blah","passwordProfile":{"password": "bleh"}}' -ContentType 'application/json' 

===============

Response: 
    status: 400 Bad Request 
    Date: Thu, 06 Apr 2017 19:35:32 GMT 
    x-ms-ags-diagnostic: {"ServerInfo":{"DataCenter":"South India","Slice":"SliceA","ScaleUnit":"000","Host":"AGSFE_IN_1","ADSiteName":"MAA"}} 
    Duration: 148.322 
    client-request-id: 516c451a-1052-4918-9671-2ebfa8d2f795 
    Content-Type: application/json 
    Access-Control-Allow-Origin: * 
    Access-Control-Expose-Headers: ETag, Location, Preference-Applied, Content-Range, request-id, client-request-id 
    Cache-Control: private 
    Transfer-Encoding: chunked 
    request-id: 516c451a-1052-4918-9671-2ebfa8d2f795 

{ 
    "error": { 
    "code": "Request_BadRequest", 
    "message": "One or more properties contains invalid values.", 
    "innerError": { 
     "request-id": "516c451a-1052-4918-9671-2ebfa8d2f795", 
     "date": "2017-04-06T19:35:32" 
    } 
    } 
} 

回答

1

您的要求在聯合域必須創建用戶包含onPremisesImmutableId。這就是爲什麼你的請求開始失敗(將域轉換爲聯邦後)。儘管此屬性表示它是不可變的,但它意味着這應該是本地用戶的不可變ID的值 - 以便您可以將本地用戶對象綁定到雲用戶對象。如果您沒有正確設置此屬性,聯合登錄將無法工作。該屬性可以更新(儘管不是出於顯而易見的原因而不推薦),並且如果用戶已經被移動到非聯合的僅雲域,則可以取消該屬性。

如果嘗試在未設置onPremisesImmutableId的情況下在聯合域中創建用戶(或者甚至將用戶的userPrincipalName更改爲未設置onPremisesImmutableId的聯合域下),則400錯誤是適當的。錯誤確實表明某些東西沒有正確設置 - 但是錯誤信息是我們所做的事情*絕對需要改進,並且可以做得更精確。

希望這會有所幫助,

+0

謝謝!雖然你剛纔重申了我已經提到過的內容,但我當然希望錯誤信息會更好。 :-) – asgs

+0

我重複了你說的話,因爲這就是我們的文檔所說的,這就是它的工作原理:)。對不起,你花了2個小時試圖解決這個問題。完全聽到你的錯誤信息。 –

+0

@丹,希望在5年過後,您重新考慮您的資源,並最終將幾個小時的工作放入至少3個最常見的錯誤消息中,其中的文本看起來像是專門爲生成WTF而設計的。 – Konstantin

相關問題