顧客のユーザー ロールを取得する
ユーザー アカウントにアタッチされているすべてのロール/アクセス許可の一覧を取得します。 バリエーションには、顧客のすべてのユーザー アカウントのすべてのアクセス許可の一覧の取得や、特定のロールを持つユーザーの一覧の取得が含まれます。
前提条件
パートナー センターの認証に関するページで説明している資格情報。 このシナリオでは、アプリとユーザーの資格情報を使用した認証のみがサポートされます。
顧客 ID です (
customer-tenant-id
)。 顧客の ID がわからない場合は、[顧客] ワークスペースを選択し、顧客の一覧から顧客を選択し、[アカウント] を選択して、パートナー センターで検索できます。 顧客の [アカウント] ページで、[顧客アカウント情報] セクションで Microsoft ID を探します。 Microsoft ID は、顧客 ID (customer-tenant-id
) と同じです。
GDAP ロール
次の GDAP ロールのうち少なくとも 1 つが必要です。
- ディレクトリ閲覧者
- グローバル閲覧者
- ユーザー管理者
- 特権ロール管理者
- ディレクトリ ライター
C#
指定した顧客のすべてのディレクトリ ロールを取得するには、最初に指定した顧客 ID を取得します。 次に、IAggregatePartner.Customers コレクションを使用し、ById() メソッドを呼び出します。 次に、DirectoryRoles プロパティを呼び出し、次に Get() または GetAsync() メソッドを呼び出します。
// string selectedCustomerId;
// IAggregatePartner partnerOperations;
var directoryRoles = partnerOperations.Customers.ById(selectedCustomerId).DirectoryRoles.Get();
サンプル: コンソール テスト アプリ。 プロジェクト: パートナー センター SDK サンプル クラス: GetCustomerDirectoryRoles.cs
特定のロールを持つ顧客ユーザーの一覧を取得するには、まず、指定した顧客 ID とディレクトリ ロール ID を取得します。 次に、IAggregatePartner.Customers コレクションを使用し、ById() メソッドを呼び出します。 次に、DirectoryRoles プロパティ、ById() メソッド、UserMembers プロパティの後に Get() メソッドまたは GetAsync() メソッドを呼び出します。
// string selectedCustomerId;
// IAggregatePartner partnerOperations;
// string selectedDirectoryRoleId;
var userMembers = partnerOperations.Customers.ById(selectedCustomerId).DirectoryRoles.ById(selectedDirectoryRoleId).UserMembers.Get();
サンプル: コンソール テスト アプリ。 プロジェクト: PartnerSDK.FeatureSamples クラス: GetCustomerDirectoryRoleUserMembers.cs
REST 要求
要求の構文
認証方法 | 要求 URI |
---|---|
GET | {baseURL}/v1/customers/{customer-tenant-id}/users/{user-id}/directoryroles HTTP/1.1 |
GET | {baseURL}/v1/customers/{customer-tenant-id}/directoryroles HTTP/1.1 |
GET | {baseURL}/v1/customers/{customer-tenant-id}/directoryroles/{role-ID}/usermembers |
URI パラメーター
正しい顧客を識別するには、次のクエリ パラメーターを使用します。
名前 | 種類 | 必須 | 説明 |
---|---|---|---|
customer-tenant-id | guid | Y | この値は、リセラーがリセラーに 属する特定の顧客の結果をフィルター処理できるようにする、GUID 形式の customer-tenant-id です。 |
user-id | guid | N | 値は、1 つのユーザー アカウントに 属する GUID 形式のユーザー ID です。 |
role-id | guid | N | 値は、ロールの種類に 属する GUID 形式のロール ID です。 すべてのユーザー アカウントを対象に、ある顧客のすべてのディレクトリ ロールを問い合わせることで、これらの ID を取得できます。 (上記の 2 番目のシナリオ)。 |
要求ヘッダー
詳細については、「パートナー センター REST ヘッダー」を参照してください。
要求本文
要求の例
GET https://api.partnercenter.microsoft.com/v1/customers/<customer-tenant-id>/users/<user-id>/directoryroles HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: b1317092-f087-471e-a637-f66523b2b94c
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
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
{
"totalCount": 2,
"items": [
{
"name": "Helpdesk Administrator",
"id": "729827e3-9c14-49f7-bb1b-9608f156bbb8",
"attributes": { "objectType": "DirectoryRole" }
},
{
"name": "User Account Administrator",
"id": "fe930be7-5e62-47db-91af-98c3a49a38b1",
"attributes": { "objectType": "DirectoryRole" }
}
],
"attributes": { "objectType": "Collection" }
}