💻

Azure AD のデバイスに extensionAttribute を追加する

2023/04/10に公開

はじめに

Azure AD では、ユーザーとデバイスのリソースに 15 個の extensionAttribute (拡張属性) が準備されており、これらに任意の値をセットすることで動的グループやデバイスフィルターなどの属性情報に基づく機能に活用することが可能です。今回はデバイスの拡張属性の設定方法を説明します。

Graph Expolorer で設定

まずは簡単に Graph Explorer から設定します。設定するにはまず対象のデバイスの ID が必要なので、以下 URI でデバイスの一覧を取得します。Method は GET です。
この際、後の手順も踏まえて Directory.ReadWrite.All を許可しておきます。

https://graph.microsoft.com/v1.0/devices/


現時点で exctentionAttribute1 は null になっています。


次に extentionAttribute1 を設定します。URI は以下で、Method は PATCH です。Directory.AccessAsUser.All の許可が必要になります。

https://graph.microsoft.com/v1.0/devices/<デバイスのID>

Request の Body には以下を入れます。

{ 
    "extensionAttributes": { 
        "extensionAttribute1": "BYOD" 
    } 
}

成功すると 204 が返ってきます。


GET で設定が反映されているか確認します。

MS Graph PowerShell で設定

今度は自動化しやすいように MS Graph PowerShell で設定します。MS Graph PowerShell のインストール方法はこちらでご確認ください。
https://learn.microsoft.com/en-us/powershell/microsoftgraph/installation?view=graph-powershell-1.0

以下コマンドでログインとスコープの設定をします。
認証画面および承諾画面が出ますので、そのままログイン・許可します。

Connect-MgGraph -Scopes "Directory.ReadWrite.All","Directory.AccessAsUser.All" 

使用するプロファイルを beta にします。(v1.0が対応していないため)

Select-MgProfile -Name "beta"

以下コマンドでデバイス ID を確認します。

Import-Module Microsoft.Graph.Identity.DirectoryManagement
Get-MgDevice | Select-Object DisplayName,Id

以下コマンドで extensionAttribute を設定します。

$params = @{ 
    ExtensionAttributes = @{ 
        ExtensionAttribute1 = "BYOD-Device" 
    } 
} 

$deviceId = "<デバイスID>" 

Update-MgDevice -DeviceId $deviceId -BodyParameter $params

以下コマンドで extensionAttribute を確認します。

Get-MgDevice -DeviceId $deviceId | Select-Object DisplayName,Id,ExtensionAttributes | ConvertTo-Json

Microsoft (有志)

Discussion