次の方法で共有


顧客のユーザー ロールを設定する

顧客アカウント内には、一連のディレクトリ ロールがあります。 これらのロールにユーザー アカウントを割り当てることができます。

前提条件

  • パートナー センターの認証に関するページで説明している資格情報。 このシナリオでは、アプリとユーザーの資格情報を使用した認証のみがサポートされます。

  • 顧客 ID です (customer-tenant-id)。 顧客の ID がわからない場合は、[顧客] ワークスペースを選択し、顧客の一覧から顧客を選択し、[アカウント] を選択して、パートナー センター検索できます。 顧客の [アカウント] ページで、[顧客アカウント情報] セクションで Microsoft ID をします。 Microsoft ID は、顧客 ID (customer-tenant-id) と同じです。

GDAP ロール

次の GDAP ロールで必要になります。

  • 特権ロール管理者

C#

顧客ユーザーにディレクトリ ロールを割り当てるには、関連するユーザーの詳細を含む新しい UserMember を作成します。 次に、指定した顧客 ID で IAggregatePartner.Customers.ById メソッドを呼び出して、顧客を識別します。 そこから、ディレクトリ ロール ID と共に 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 形式の customer-tenant-id です。
role-id guid Y 値は、ユーザーに 割り当てるロールを識別する GUID 形式のロール ID です。

要求ヘッダー

詳細については、「パートナー センター REST ヘッダー」を参照してください。

要求本文

次の表では、要求本文で必要なプロパティについて説明します。

名前 種類 必須 説明
Id string Y ロールに追加するユーザーの ID。
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: 90bda268-7929-4ad6-be01-89c5af5fc504
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 応答

このメソッドは、ユーザーにロールが正常に割り当てられたときに、ロール ID がアタッチされたユーザー アカウントを返します。

応答の成功とエラーのコード

各応答には、成功または失敗を示す HTTP ステータス コードと、追加のデバッグ情報が付属しています。 このコード、エラーの種類、追加のパラメーターを読み取るには、ネットワーク トレース ツールを使用します。 完全な一覧については、パートナー センターの REST エラーコードに関する記事を参照してください。

応答の例

HTTP/1.1 201 Created
Content-Length: 231
Content-Type: application/json; charset=utf-8
MS-CorrelationId: 90bda268-7929-4ad6-be01-89c5af5fc504
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"
    }
}