為客戶設定使用者角色
在客戶帳戶內,有一組目錄角色。 您可以將使用者帳戶指派給這些角色。
必要條件
認證,如合作夥伴中心驗證所述。 此案例僅支援使用「應用程式+使用者」認證來進行驗證。
客戶識別碼 (
customer-tenant-id
)。 如果您不知道客戶的識別碼,您可以在合作夥伴中心 中選取 [客戶 ] 工作區,然後從客戶清單中查看客戶,然後 從 [帳戶 ]。 在客戶的 [帳戶] 頁面上,在 [客戶帳戶資訊] 區段中尋找 Microsoft 識別碼 。 Microsoft 識別碼與客戶識別碼 (customer-tenant-id
) 相同。
GDAP 角色
您需要下列 GDAP 角色:
- 特殊權限角色管理員
C#
若要將目錄角色指派給客戶使用者,請使用相關的使用者詳細資料建立新的 UserMember 。 然後,使用指定的客戶識別碼呼叫 IAggregatePartner.Customers.ById 方法,以識別客戶。 從該處,使用 DirectoryRoles.ById 方法搭配目錄角色識別碼來指定角色。 然後,存取 UserMembers 集合,並使用 Create 方法,將新的使用者成員新增至指派給該角色的使用者成員集合。
// UserMember createdUser;
// IAggregatePartner partnerOperations;
// Customer selectedCustomer;
// IDirectoryRole selectedRole;
// Create the new user member.
UserMember userMemberToAdd = new UserMember()
{
UserPrincipalName = createdUser.UserPrincipalName,
DisplayName = createdUser.DisplayName,
Id = createdUser.Id
};
// Add the new user member to the role.
var userMemberAdded = partnerOperations.Customers.ById(selectedCustomer.Id).DirectoryRoles.ById(selectedRole.Id).UserMembers.Create(userMemberToAdd);
範例 : 主控台測試應用程式 。 專案 :合作夥伴中心 SDK 範例 類別 :AddUserMemberToDirectoryRole.cs
REST 要求
要求語法
方法 | 要求 URI |
---|---|
POST | {baseURL} /v1/customers/{customer-tenant-id}/directoryroles/{role-ID}/usermembers HTTP/1.1 |
URI 參數
使用下列 URI 參數來識別正確的客戶和角色。 若要識別要指派角色的使用者,請在要求本文中提供識別資訊。
名稱 | 類型 | 必填 | 描述 |
---|---|---|---|
customer-tenant-id | guid | Y | 此值是 GUID 格式的客戶 租使用者識別碼 ,可讓轉銷商篩選屬於轉銷商之指定客戶的結果。 |
role-id | guid | Y | 值是 GUID 格式 的角色識別碼 ,可識別要指派給使用者的角色。 |
要求標頭
如需詳細資訊,請參閱合作夥伴中心 REST 標頭。
要求本文
下表描述要求本文中的必要屬性。
名稱 | 類型 | 必填 | 描述 |
---|---|---|---|
識別碼 | string | Y | 要新增至角色的使用者識別碼。 |
DisplayName | string | Y | 使用者的易記顯示名稱。 |
UserPrincipalName | string | Y | 使用者主體的名稱。 |
屬性 | object | Y | 包含 「ObjectType」:「UserMember」 |
要求範例
POST https://api.partnercenter.microsoft.com/v1/customers/4d3cf487-70f4-4e1e-9ff1-b2bfce8d9f04/directoryroles/f023fd81-a637-4b56-95fd-791ac0226033/usermembers HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: a56cb2e5-a156-4f68-9155-57ffe2b93d18
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
X-Locale: en-US
Content-Type: application/json
Host: api.partnercenter.microsoft.com
Content-Length: 180
Expect: 100-continue
{
"Id": "a9ef48bb-8758-4590-a312-d4a47bfaded4",
"DisplayName": "Daniel Tsai",
"UserPrincipalName": "Daniel@dtdemocspcustomer005.onmicrosoft.com",
"Attributes": {
"ObjectType": "UserMember"
}
}
REST 回應
此方法會傳回使用者成功指派角色時所附加角色識別碼的使用者帳戶。
回應成功和錯誤碼
每個回應都隨附 HTTP 狀態碼,會指出成功與否以及其他的偵錯資訊。 請使用網路追蹤工具來讀取此錯誤碼、錯誤類型和其他參數。 如需完整清單,請參閱合作夥伴中心的 REST 錯誤碼。
回應範例
HTTP/1.1 201 Created
Content-Length: 231
Content-Type: application/json; charset=utf-8
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
MS-RequestId: a56cb2e5-a156-4f68-9155-57ffe2b93d18
MS-CV: aia94+gnrEeQqkGr.0
MS-ServerId: 101112202
Date: Tue, 20 Dec 2016 23:36:55 GMT
{
"displayName": "Daniel Tsai",
"userPrincipalName": "Daniel@dtdemocspcustomer005.onmicrosoft.com",
"roleId": "f023fd81-a637-4b56-95fd-791ac0226033",
"id": "a9ef48bb-8758-4590-a312-d4a47bfaded4",
"attributes": {
"objectType": "UserMember"
}
}