Intune を利用したデバイス管理やコンプライアンス管理を効率化するためには、Microsoft Graph API を活用した PowerShell スクリプトが非常に役立ちます。今回は、Intune の管理を行う際に特に便利な PowerShell スクリプトをいくつかご紹介します。これらを活用することで、日々の管理作業を大幅に簡略化できるでしょう。
デバイスのリストを取得するスクリプト
テナント内で管理しているデバイスの一覧を取得するスクリプトです。デバイスの基本情報(デバイス名、ユーザー、OS、コンプライアンス状態)を確認するのに便利です。
# Microsoft Graph API にサインイン
Connect-MSGraph
# デバイスのリストを取得
$devices = Get-IntuneManagedDevice
# デバイス情報を表示
$devices | ForEach-Object {
Write-Host "Device Name: " $_.deviceName
Write-Host "User Principal Name: " $_.userPrincipalName
Write-Host "Operating System: " $_.operatingSystem
Write-Host "Compliance State: " $_.complianceState
Write-Host "----------------------"
}
このスクリプトを使うと、テナント内のデバイス情報を一括で取得でき、管理者がデバイスの状態を簡単に確認できます。
コンプライアンスが非準拠のデバイスを抽出する
コンプライアンス状態が「非準拠」のデバイスのみを抽出するスクリプトです。セキュリティ対策の強化や迅速な対応が求められる際に役立ちます。
# Microsoft Graph API にサインイン
Connect-MSGraph
# デバイスのリストを取得
$nonCompliantDevices = Get-IntuneManagedDevice | Where-Object { $_.complianceState -eq "nonCompliant" }
# 非準拠デバイスの情報を表示
$nonCompliantDevices | ForEach-Object {
Write-Host "Device Name: " $_.deviceName
Write-Host "User Principal Name: " $_.userPrincipalName
Write-Host "Operating System: " $_.operatingSystem
Write-Host "Compliance State: " $_.complianceState
Write-Host "----------------------"
}
このスクリプトを実行することで、非準拠デバイスのリストを素早く取得し、問題のあるデバイスへの対応が可能になります。
特定のデバイスをリモートワイプする
デバイスの紛失やセキュリティ上の理由から、リモートでデバイスをワイプする必要がある場合に使用するスクリプトです。
# Microsoft Graph API にサインイン
Connect-MSGraph
# ワイプしたいデバイスの ID
$deviceId = "<対象デバイスのID>"
# デバイスのリモートワイプを実行
Invoke-IntuneManagedDeviceWipe -ManagedDeviceId $deviceId -KeepEnrollmentData $true
Write-Host "The device with ID $deviceId has been wiped."
このスクリプトでは、デバイスの ID を指定してリモートから初期化が可能です。紛失時やセキュリティインシデント時に迅速な対応が求められる場合に非常に有効です。
デバイスのリモート再起動
リモートでデバイスを再起動するためのスクリプトです。メンテナンス時や問題解決の際に使用できます
# Microsoft Graph API にサインイン
Connect-MSGraph
# 再起動したいデバイスの ID
$deviceId = "<対象デバイスのID>"
# デバイスのリモート再起動を実行
Invoke-IntuneManagedDeviceReboot -ManagedDeviceId $deviceId
Write-Host "The device with ID $deviceId has been rebooted."
これにより、遠隔操作でデバイスの再起動が可能になり、ユーザーの作業を妨げずに迅速な対応が可能です。
デバイスにインストールされているアプリケーションの確認
デバイスにインストールされているアプリケーションの情報を取得し、ポリシーに基づいたアプリケーション管理が可能です。
# Microsoft Graph API にサインイン
Connect-MSGraph
# デバイス ID を指定
$deviceId = "<対象デバイスのID>"
# デバイスにインストールされているアプリケーションのリストを取得
$apps = Get-IntuneManagedDeviceAppInventory -ManagedDeviceId $deviceId
# アプリケーション情報を表示
$apps | ForEach-Object {
Write-Host "App Name: " $_.displayName
Write-Host "Publisher: " $_.publisher
Write-Host "Version: " $_.version
Write-Host "----------------------"
}
このスクリプトでは、特定のデバイスにインストールされているアプリケーション一覧を取得でき、適切なアプリケーション管理に役立ちます。
まとめ
これらの PowerShell スクリプトを活用することで、Intune 管理者が日々の業務を効率化し、デバイスやアプリケーションの管理作業が大幅に簡単になります。
注意: スクリプトの実行には、適切な権限が必要です。必ずテスト環境で動作確認を行い、本番環境での運用は十分に検証した上で行ってください。また、デバイス操作に関してはポリシーに従い、慎重に実施することが求められます。
Intune の管理において、PowerShell スクリプトを有効活用して作業効率を最大化しましょう!
コメント