Microsoft Intuneの設定をPowerShellから行う(2)

皆さんこんにちは。国井です。2019年もどうぞよろしくお願いいたします。

前回、PowerShellからMicrosoft Intuneを操作する方法を紹介しましたが、
ブログを書いた後で、なんとPowerShellコマンドレットが用意されていることに気が付きました。

Intune-PowerShell-SDK
https://github.com/Microsoft/Intune-PowerShell-SDK

上記のサイトにも書いてありますが、
https://github.com/Microsoft/Intune-PowerShell-SDK/releasesからダウンロードすること
・.NET Framework 4.7.1以降が事前にインストールされていること
・Windows 10の場合、net471フォルダーにあるコンテンツを使うこと

という条件を満たすように構成します。
そのうえで、次のコマンドレットを実行してIntuneに接続します。
(Microsoft.Graph.Intune.psd1ファイルはnet471フォルダー内にあります)

Install-Module Microsoft.Graph.Intune
Connect-MSGraph

管理者の資格情報を入力すると、OAuth2.0の承諾画面が出るので、承諾しておきます。

imageimage

以上で設定は完了です。
利用可能なコマンドレットは
Get-Command –Module Microsoft.Graph.Intune と実行すれば確認できます。
なんと、その数914!

いくつかみてみましょう。

Intune登録デバイスの確認

Get-IntuneManagedDeviceコマンドレットを使います。

image

実行結果のうち、deviceName属性がデバイスの名前、deviceEnrollmentType属性がAzure ADへのデバイス登録方法(registered, WindowsAzureADJoinなど)、osVersion属性がOSバージョンをそれぞれ表します。

ポリシーの準拠状況の確認

Get-IntuneManagedDeviceDeviceCompliancePolicyStateコマンドレットで確認できますが、確認するデバイスのIDを指定する必要があるので、

Get-IntuneManagedDevice | Get-IntuneManagedDeviceDeviceCompliancePolicyState

のように指定します。

展開するアプリの確認

展開するアプリはGet-IntuneMobileAppコマンドレットを使います。
ただ、色々な情報が出てきて見にくいので、Get-IntuneMobileApp | ft displayName のように整形するとよいでしょう。

image

Graph APIのメソッドで直接アクセス

Intune用PowerShellコマンドレットを実行すると、内部的にはGraph APIを実行してアクセスしています。
Graph APIによる直接的なアクセスを行いたい場合、Invoke-MSGraphRequestコマンドレットを使います。
Graph APIではHTTPプロトコルのGETメソッドを使ってアクセスするので、
パラメーターとしてGETメソッドの指定、さらにアクセスしたい情報をURIで指定します。
例えば、前述の展開するアプリの確認をGraph APIで直接指定する場合、次のように指定します。

Invoke-MSGraphRequest -HttpRequest GET -Uri ‘deviceAppManagement/mobileApp/アプリID’

image

ちなみにアプリIDはGet-IntuneMobileApp | ft displayName, id コマンドレットを実行すれば確認できます。

デバイスに対するワイプ/リタイヤ等の操作

Intune管理デバイスに対して、ワイプやリタイヤ(セレクティブワイプ)、再起動などの操作はInvoke-IntuneManagedDevice*コマンドレットで実行できます。

image

例えば、再起動を実行する場合はInvoke-IntuneManagedDeviceRebootNowコマンドレットを実行します。デバイスの指定には、デバイスの名前ではなく、デバイスIDが必要になるので、先にGet-IntuneManagedDeviceコマンドレットでIDを調べておいてから実行します。

image

デバイス所有者の設定変更

デバイスに対して設定されたプロパティ情報を変更する場合もそれぞれの設定に対応したコマンドレットが用意されています。例えば、前回の投稿でも紹介したデバイス所有者情報を変更する場合はUpdate-IntuneManagedDeviceコマンドレットを使います。

image

■ ■ ■

今回紹介したコマンドレット以外にも、たくさんの操作が可能なので、ぜひ色々と試してみてください。