必要要件
- Power Shell Version 5.1以降
- .NET Framework 4.7.2以降
必要に応じて以下のコマンドでPower Shellを最新版に更新してください
Install-Module PowerShellGet -Force
IntuneBackupAndRestoreでバックアップされるもの
以下のIntuneの設定をバックアップしてくれます
- クライアントアプリ(設定内容のみ、リストアはできない)
- デバイスコンプライアンスポリシー
- エンドポイントセキュリティでの設定
- 構成プロファイル
- アプリ構成ポリシー
- アプリ保護ポリシー
- 更新リング
IntuneBackupAndRestoreのインストール
- PowerShellを管理者権限で起動します
- 次のコマンドを実行インストールします。
Install-Module -Name IntuneBackupAndRestore
- 次のコマンドを実行し、Microsoft.Graph.Intuneをインストールします
Install-Module -Name Micorosoft.Graph.Intune
- PowerShellの実行に実行ポリシーの変更が必要なため、以下のコマンドで設定を変更します
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
- Microsoft Graph PowerShell SDKが必要になるため、以下のコマンドを実行しインストールします
Install-Module Microsoft.Graph -Scope CurrentUser
- 以下のコマンドでインストールが完了したかを確認します
Get-InstalledModule Microsoft.Graph
- 依存関係含め、アップデートします
Update-Module Microsoft.Graph
Microsoft365テナントに接続
バックアップを取得したいテナントに以下のコマンドを実行し接続します
Connect-MSGraph
管理者権限を持っているユーザーで接続します。
要求されたアクセス許可を承諾します
以下のようにTenantIdが表示されれば接続されています
UPN TenantId
--- --------
[email protected] hogehoge-hogehoge-hoge-hogehoge
IntuneのBackupをする
以下のコマンドを実行し、モジュールを利用できるようにします
Import-Module IntuneBackupAndRestore
とりあえずフルバックアップしてみる
以下のコマンドを実行し、Intuneのフルバックアップをしてみます
Start-IntuneBackup -Path C:¥temp¥IntuneBackup
実行するとバックアップ状況が表示されていきます
Action Type Name Path
------ ---- ---- ----
Backup Intune Backup and Restore Action IntuneBackupAndRestore - Start Intune Backup Config and Assignments C:\temp\...
Backup Client App 7-Zip 21.07 (x64 edition) Client A...
Backup Client App Apple Configurator Client A...
Backup Client App Dialpad Client A...
Backup Client App Evernote Client A...
Backup Client App Excel Mobile Client A...
Backup Client App Google Chrome Client A...
Backup Client App GoogleChrome.pkg Client A...
Backup Client App Intune ポータル サイト Client A...
Intune設定をRestoreする
開発者ライセンスを新規に取得し、IntuneのデータをRestoreしてみます
コンプライアンスポリシー等に何もない状態です
開発者テナントへPowerShellからの接続先を切り替えて、
リストアコマンドを実行してみます。
Start-IntuneRestoreConfig -Path C:\temp\IntuneBackup
バックアップファイルから設定が読み込まれていきます
Action Type Name Path
------ ---- ---- ----
Restore Intune Backup and Restore Action IntuneBackupAndRestore - Start Intune Restore Config C:\temp\IntuneBackup
Restore Device Compliance Policy macOSコンプライアンス・ポリシー Device Compliance Poli...
Restore Device Compliance Policy Win10コンプラポリシー Device Compliance Poli...
Restore Device Configuration Endpoint onboarding for macOS Device Configurations\...
途中以下のエラーが表示されましたが、多分これは開発者ライセンスにMDEのライセンスが付属しないからではないかと思います。
バックアップを取得したテナントはM365E5のためMDEライセンスが付与されています。
詳細: 検出と応答 - Failed to restore Device Management Intent (Endpoint detection and response)
Invoke-IntuneRestoreDeviceManagementIntent : 400 Bad Request
コンプライアンスポリシーがリストアされたことが確認できます
スクリプトもバックアップされる
バックアップを取得したパスに移動し、
Device Management Scripts¥Script Content の中に設定したPS1ファイル等が保存されています
Intuneの管理画面からはスクリプトの内容は確認できませんが、一度バックアップを取得して、スクリプトの中身を確認するということができそうですね
コンプライアンスポリシーだけリストアする
全体ではなく、コンプライアンスポリシーだけをリストアすることも可能です。
次のコマンドを実行します
Invoke-IntuneRestoreDeviceCompliancePolicy -Path C:\temp\IntuneBackup
アサインのリストア
ポリシーのどのグループがアサインされていかたもバックアップされていますので、
バックアップしたテナントへのリストアについては、割当グループもリストアされるようです。
新規テナントに関しては、作成したグループのオブジェクトIDを、jsonファイルへ書き込んでからリストアすればリストア+割当が実現できそうです。
注意事項
すでにリストアされたか等の確認はしてくれませんので、
コマンドを2回実行すると、同じ項目が2つ作成されます。
そこは注意してリストアをするようにしましょう
終わりに
万が一のために本番テナントのIntune設定をバックアップしておくと良さそうですね。
またCompare-IntuneBackupFileコマンドというのがあるので、バックアップしたJSONを指定すると、設定差分を表示してくれます。
管理者が複数人いる場合にはどこが変更されたのかを確認するツールとしても利用できそうです。
以下のような形で差分表示をしてくれます
Compare-IntuneBackupFile -ReferenceFilePath 'C:\temp\bkup001\Device Compliance Policies\macOSコfンプライアンス・ポリシー.json' -DifferenceFilePath 'C:\temp\bkup002\Device Compliance Policies\macOSコンプライアンス・ポリシー.json'
Property Old value New value
-------- --------- ---------
lastModifiedDateTime 2022/06/04 14:10:31 2022/06/04 14:17:55
version 4 5
passwordMinimumLength 8 null
passwordPreviousPasswordBlockCount 2 null
どこが変わったんだー!?と探し回るよりはるかに簡単に変更箇所を特定することができます。 それでは!よいIntuneライフを!
おまけ
IntuneBakupAndRestoreを調べていて見つけたツールがあります。 設定内容をWord形式で英語ですが出力してくれます。 パラメーターシートが必要な場合はこちらを利用してもいいかもしれません。 使い方は以下のとおりです。
Install-Module -Name IntuneDocumentation
Invoke-IntuneDocumentation -FullDocumentationPath C:\temp\IntuneBackup\IntuneDoc.docx
こんな感じの出力をしてくれます。
ここまで書いておいてあれですが、Intune Managerのほうがバックアップできる項目は多いです(笑)