デバイスを更新する
[アーティクル]
06/29/2022
3 人の共同作成者
この記事の内容
名前空間: microsoft.graph
登録済みデバイスのプロパティを更新します。
承認済みモバイル デバイス管理 (MDM) アプリによって、デバイスの特定のプロパティのみを更新できます。
重要
この API には既知 の問題があります。 アプリケーションのアクセス許可を持つアプリでは、Linux ベースのデバイスの extensionAttributes プロパティ ( operationSystem プロパティ linuxが .
アクセス許可
この API を呼び出すには、次のいずれかのアクセス許可が必要です。アクセス許可の選択方法などの詳細については、「アクセス許可 」を参照してください。
アクセス許可の種類
アクセス許可 (特権の小さいものから大きいものへ)
委任 (職場または学校のアカウント)
Directory.AccessAsUser.All
委任 (個人用 Microsoft アカウント)
サポートされていません。
アプリケーション
Device.ReadWrite.All, Directory.ReadWrite.All
呼び出し元のユーザーは、グローバル管理者 、Intune管理者 のいずれかの Azure AD ロール に属している必要があります。 クラウド デバイス管理者 ロールの呼び出し元ユーザーは、この API を使用してデバイスを有効または無効にすることができ、Windows 365管理者 ロールを持つユーザーは、基本的なデバイス プロパティのみを更新できます。
HTTP 要求
{id}要求内の値は、deviceId プロパティではなく、デバイスの id プロパティの値です。
PATCH /devices/{id}
名前
型
説明
Authorization
string
ベアラー {token}。必須。
要求本文
要求本文で、更新するデバイス プロパティの値を指定します。 要求本文に含まれない既存のプロパティは、以前の値のままになるか、他のプロパティ値の変化に基づいて再計算されます。 最適なパフォーマンスを得るためには、変更されていない既存の値を含めないでください。
プロパティ
型
説明
accountEnabled
Boolean
アカウントが有効な場合は true であり、それ以外の場合は false です。 このプロパティを更新できるのは、 グローバル管理者 ロールと クラウド デバイス管理者 ロールの呼び出し元のみです。
operatingSystem
String
デバイス上のオペレーティング システムの種類。
operatingSystemVersion
String
デバイス上のオペレーティング システムのバージョン
displayName
String
デバイスの表示名。
isCompliant
ブール値
trueデバイスがモバイル デバイス管理 (MDM) ポリシーに準拠している場合は 。それ以外の場合は . false これは、任意のデバイス OS の種類のIntuneまたは Windows OS デバイス用の承認済みの MDM アプリ によってのみ更新できます。
isManaged
ブール値
trueデバイスがモバイル デバイス管理 (MDM) アプリによって管理されている場合は 。それ以外の場合は . false これは、任意のデバイス OS の種類のIntuneまたは Windows OS デバイス用の承認済みの MDM アプリ によってのみ更新できます。
応答
成功した場合、このメソッドは 204 No Content 応答コードを返します。
例
例 1: デバイスの accountEnabled プロパティを更新する
要求
PATCH https://graph.microsoft.com/v1.0/devices/7c06cd31-7c30-4f3b-a5c3-444cd8dd63ac
Content-type: application/json
{
"accountEnabled": false
}
GraphServiceClient graphClient = new GraphServiceClient( authProvider );
var device = new Device
{
AccountEnabled = false
};
await graphClient.Devices["{device-id}"]
.Request()
.UpdateAsync(device);
SDK をプロジェクトに追加し、authProvider インスタンスを作成する 方法の詳細については、SDK のドキュメントを参照してください 。
const options = {
authProvider,
};
const client = Client.init(options);
const device = {
accountEnabled: false
};
await client.api('/devices/7c06cd31-7c30-4f3b-a5c3-444cd8dd63ac')
.update(device);
SDK をプロジェクトに追加し、authProvider インスタンスを作成する 方法の詳細については、SDK のドキュメントを参照してください 。
MSHTTPClient *httpClient = [MSClientFactory createHTTPClientWithAuthenticationProvider:authenticationProvider];
NSString *MSGraphBaseURL = @"https://graph.microsoft.com/v1.0/";
NSMutableURLRequest *urlRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:[MSGraphBaseURL stringByAppendingString:@"/devices/{id}"]]];
[urlRequest setHTTPMethod:@"PATCH"];
[urlRequest setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
MSGraphDevice *device = [[MSGraphDevice alloc] init];
[device setAccountEnabled: false];
NSError *error;
NSData *deviceData = [device getSerializedDataWithError:&error];
[urlRequest setHTTPBody:deviceData];
MSURLSessionDataTask *meDataTask = [httpClient dataTaskWithRequest:urlRequest
completionHandler: ^(NSData *data, NSURLResponse *response, NSError *nserror) {
//Request Completed
}];
[meDataTask execute];
SDK をプロジェクトに追加し、authProvider インスタンスを作成する 方法の詳細については、SDK のドキュメントを参照してください 。
GraphServiceClient graphClient = GraphServiceClient.builder().authenticationProvider( authProvider ).buildClient();
Device device = new Device();
device.accountEnabled = false;
graphClient.devices("7c06cd31-7c30-4f3b-a5c3-444cd8dd63ac")
.buildRequest()
.patch(device);
SDK をプロジェクトに追加し、authProvider インスタンスを作成する 方法の詳細については、SDK のドキュメントを参照してください 。
//THE GO SDK IS IN PREVIEW. NON-PRODUCTION USE ONLY
graphClient := msgraphsdk.NewGraphServiceClient(requestAdapter)
requestBody := msgraphsdk.NewDevice()
accountEnabled := false
requestBody.SetAccountEnabled(&accountEnabled)
deviceId := "device-id"
graphClient.DevicesById(&deviceId).Patch(requestBody)
SDK をプロジェクトに追加し、authProvider インスタンスを作成する 方法の詳細については、SDK のドキュメントを参照してください 。
応答
HTTP/1.1 204 No Content
例 2: デバイスに extensionAttributes を書き込む
要求
PATCH https://graph.microsoft.com/v1.0/devices/7c06cd31-7c30-4f3b-a5c3-444cd8dd63ac
Content-type: application/json
{
"extensionAttributes": {
"extensionAttribute1": "BYOD-Device"
}
}
GraphServiceClient graphClient = new GraphServiceClient( authProvider );
var device = new Device
{
AdditionalData = new Dictionary<string, object>()
{
{"extensionAttributes", "{\"extensionAttribute1\":\"BYOD-Device\"}"}
}
};
await graphClient.Devices["{device-id}"]
.Request()
.UpdateAsync(device);
SDK をプロジェクトに追加し、authProvider インスタンスを作成する 方法の詳細については、SDK のドキュメントを参照してください 。
const options = {
authProvider,
};
const client = Client.init(options);
const device = {
extensionAttributes: {
extensionAttribute1: 'BYOD-Device'
}
};
await client.api('/devices/7c06cd31-7c30-4f3b-a5c3-444cd8dd63ac')
.update(device);
SDK をプロジェクトに追加し、authProvider インスタンスを作成する 方法の詳細については、SDK のドキュメントを参照してください 。
//THE GO SDK IS IN PREVIEW. NON-PRODUCTION USE ONLY
graphClient := msgraphsdk.NewGraphServiceClient(requestAdapter)
requestBody := msgraphsdk.NewDevice()
requestBody.SetAdditionalData(map[string]interface{}{
}
deviceId := "device-id"
graphClient.DevicesById(&deviceId).Patch(requestBody)
SDK をプロジェクトに追加し、authProvider インスタンスを作成する 方法の詳細については、SDK のドキュメントを参照してください 。
応答
HTTP/1.1 204 No Content