Share via


ポリシーを使用してデバイスの一覧を更新する

適用対象: パートナー センター

指定した顧客の構成ポリシーを使用してデバイスの一覧を更新する方法。

前提条件

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

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

  • ポリシー識別子。

  • 更新するデバイスのデバイス識別子。

C#

指定した構成ポリシーを使用してデバイスの一覧を更新するには、まず、次のコード例に示すように、型 [KeyValuePair/dotnet/api/system.collections.generic.keyvaluepair-2)(PolicyCategory,string) の [List/dotnet/api/system.collections.generic.list-1] をインスタンス化し、適用するポリシーを追加します。 ポリシーのポリシー識別子が必要です。

次に、ポリシーで更新するデバイス オブジェクトの一覧を作成し、デバイス識別子と、適用するポリシーを含むリストをデバイスごとに指定します。 次に、DevicePolicyUpdateRequest オブジェクトをインスタンス化し、Devices プロパティをデバイス オブジェクトの一覧に設定します。

デバイス ポリシーの更新要求を処理するには、IAggregatePartner.Customers.ById メソッドを顧客識別子と共に呼び出して、指定した顧客に対する操作へのインターフェイスを取得します。 次に、DevicePolicy プロパティを取得して、顧客のデバイス コレクション操作へのインターフェイスを取得します。 最後に、DevicePolicyUpdateRequest オブジェクトを使用して Update メソッドを呼び出して、ポリシーでデバイスを更新します。

IAggregatePartner partnerOperations;
string selectedCustomerId;
string selectedConfigurationPolicyId;
string selectedDeviceId;

// Indicate the policy to apply to the list of devices.
List<KeyValuePair<PolicyCategory, string>>
    policyToBeAdded = new List<KeyValuePair<PolicyCategory, string>>
{
    new KeyValuePair<PolicyCategory, string>
        (PolicyCategory.OOBE, selectedConfigurationPolicyId)
};

// Create a list of devices to be updated with a policy.
List<Device> devices = new List<Device>
{
    new Device
    {
        Id = selectedDeviceId,
        Policies=policyToBeAdded
    }
};

// Instantiate a DevicePolicyUpdateRequest object.
DevicePolicyUpdateRequest
    devicePolicyUpdateRequest = new DevicePolicyUpdateRequest
{
    Devices = devices
};

// Process the DevicePolicyUpdateRequest.
var trackingLocation =
    partnerOperations.Customers.ById(selectedCustomerId).DevicePolicy.Update(devicePolicyUpdateRequest);

サンプル: コンソール テスト アプリプロジェクト: パートナー センター SDK サンプル クラス: UpdateDevicesPolicy.cs

REST 要求

要求の構文

認証方法 要求 URI
PATCH {baseURL}/v1/customers/{customer-id}/DevicePolicy更新 HTTP/1.1

URI パラメーター

要求を作成するときは、次のパス パラメーターを使用します。

名前 タイプ Required 説明
customer-id string はい 顧客を識別する GUID 形式の文字列。

要求ヘッダー

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

要求本文

要求本文には、DevicePolicyUpdateRequest リソースが含まれている必要があります。

要求の例

PATCH https://api.partnercenter.microsoft.com/v1/customers/c7f3c849-129f-4b85-a96d-4f8e88b315a3/DevicePolicyUpdates HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: 1b658428-5afa-46d4-af86-c9c6af5634e2
MS-CorrelationId: 49b1e7b2-82e7-4403-b63b-8765269b448d
X-Locale: en-US
MS-PartnerCenter-Application: Partner Center .NET SDK Samples
Content-Type: application/json
Host: api.partnercenter.microsoft.com
Content-Length: 363
Expect: 100-continue
Connection: Keep-Alive

{
    "Devices": [{
            "Id": "9993-8627-3608-6844-6369-4361-72",
            "SerialNumber": null,
            "ProductKey": null,
            "HardwareHash": null,
            "Policies": [{
                    "Key": "o_o_b_e",
                    "Value": "15a04610-9229-4e80-94e0-0e826a09c9e2"
                }
            ],
            "CreatedBy": null,
            "UploadedDate": "0001-01-01T00:00:00",
            "AllowedOperations": null,
            "Attributes": {
                "ObjectType": "Device"
            }
        }
    ],
    "Attributes": {
        "ObjectType": "DevicePolicyUpdateRequest"
    }
}

重要

2023 年 6 月の時点で、最新のパートナー センター .NET SDK リリース 3.4.0 がアーカイブされるようになりました。 SDK リリースは、有用な情報が記載された readme ファイルと一緒に GitHub からダウンロードできます。

パートナーの皆様には、パートナー センター REST API を引き続き使用することをお勧めします。

REST 応答

成功した場合、応答には、このバッチ プロセスの状態を取得するために使用できる URI を持つ Location ヘッダーが含まれます。 他の関連する REST API で使用するために、この URI を保存します。

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

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

応答の例

HTTP/1.1 202 Accepted
Content-Length: 0
Location: /customers/c7f3c849-129f-4b85-a96d-4f8e88b315a3/batchJobStatus/a15f3996-620a-4404-9f1f-4c2de78de0de
MS-CorrelationId: 49b1e7b2-82e7-4403-b63b-8765269b448d
MS-RequestId: 1b658428-5afa-46d4-af86-c9c6af5634e2
MS-CV: rCXyd8Z/lUSxUd0P.0
MS-ServerId: 020021921
Date: Thu, 28 Sep 2017 21:33:05 GMT