条件付きアクセス ポリシーをエクスポートする方法

条件付きアクセス ポリシーをエクスポートするにはどうすればよいですか? Microsoft Entra テナントには複数の条件付きアクセス ポリシーがあり、設定されたすべての構成は完全に機能します。同じ CA ポリシーを別のテナントに作成したいと考えています。 CA ポリシーの作成には時間がかかり、構成を見逃す可能性があります。では、条件付きアクセス ポリシーをバックアップして別のテナントにインポートするにはどうすればよいでしょうか?この記事では、PowerShell を使用して条件付きアクセス ポリシー (すべての構成を含む) を JSON ファイルにエクスポートする方法を学習します。

Microsoft Entra 管理センターで条件付きアクセス ポリシーを確認する

Microsoft Entra の条件付きアクセス ポリシーとそのステータスを確認してみましょう。

  1. にサインインしますMicrosoft Entra 管理センター
  2. 拡大するアイデンティティ > 保護
  3. をクリックしてください条件付きアクセス
  4. 選択すべてのポリシーを表示

この例では、2 つの CA ポリシーがあります。ポリシーの 1 つが有効になり、もう 1 つは無効になります。

条件付きアクセス ポリシーをエクスポートしたい場合はどうすればよいでしょうか?条件付きアクセス ポリシーをエクスポートする唯一の方法は、PowerShell を使用することです。これは、CA ポリシーをバックアップする優れた方法です。これにより、将来的に変更が設定され、デフォルトの構成に戻したい場合に構成を調べることができます。

次のステップでは、すべての条件付きアクセス ポリシーをコンピューターにバックアップする方法を示します。

Microsoft Graph PowerShell をインストールする

さらに進んで Microsoft Entra テナントからすべての条件付きアクセス ポリシーを取得する前に、Microsoft Graph PowerShell をインストールする必要があります。

Windows PowerShell を管理者として起動し、以下のコマンドを実行します。

Install-Module Microsoft.Graph -Force

重要:エラーや不正確な結果を防ぐために、コマンドレットまたはスクリプトを実行する前に、必ず最新の Microsoft Graph PowerShell モジュール バージョンに更新してください。

Microsoft Graph PowerShell SDK モジュールがインストールされたので、次のステップに進むことができます。

Export-CAPolicies PowerShell スクリプトを準備する

に 2 つのフォルダーを作成します。(C:)ドライブ:

  • 温度
  • スクリプト

Export-CAPolicies.ps1 PowerShell スクリプトをダウンロードして、C:スクリプトフォルダ。スクリプトは JSON ファイルをC:温度フォルダ。

スクリプト実行時のエラーを防ぐために、ファイルのブロックが解除されていることを確認してください。詳細については、PowerShell スクリプトの実行時の「デジタル署名がありません」エラーの記事をご覧ください。

こちらもお読みください:条件付きアクセス ポリシーをインポートする方法

別のオプションは、以下のコードをコピーしてメモ帳に貼り付けることです。名前を付けてくださいエクスポート-CAPolicies.ps1そしてそれをC:スクリプトフォルダ。

<#
    .SYNOPSIS
    Export-CAPolicies.ps1

    .DESCRIPTION
    Export Conditional Access policies to JSON files for backup purposes.

    .LINK
    www.alitajran.com/export-conditional-access-policies/

    .NOTES
    Written by: ALI TAJRAN
    Website:    www.alitajran.com
    LinkedIn:   linkedin.com/in/alitajran

    .CHANGELOG
    V1.00, 11/16/2023 - Initial version
#>

# Connect to Microsoft Graph API
Connect-MgGraph -Scopes 'Policy.Read.All'

# Export path for CA policies
$ExportPath = "C:temp"

try {
    # Retrieve all conditional access policies from Microsoft Graph API
    $AllPolicies = Get-MgIdentityConditionalAccessPolicy -All

    if ($AllPolicies.Count -eq 0) {
        Write-Host "There are no CA policies found to export." -ForegroundColor Yellow
    }
    else {
        # Iterate through each policy
        foreach ($Policy in $AllPolicies) {
            try {
                # Get the display name of the policy
                $PolicyName = $Policy.DisplayName
            
                # Convert the policy object to JSON with a depth of 6
                $PolicyJSON = $Policy | ConvertTo-Json -Depth 6
            
                # Write the JSON to a file in the export path
                $PolicyJSON | Out-File "$ExportPath$PolicyName.json" -Force
            
                # Print a success message for the policy backup
                Write-Host "Successfully backed up CA policy: $($PolicyName)" -ForegroundColor Green
            }
            catch {
                # Print an error message for the policy backup
                Write-Host "Error occurred while backing up CA policy: $($Policy.DisplayName). $($_.Exception.Message)" -ForegroundColor Red
            }
        }
    }
}
catch {
    # Print a generic error message
    Write-Host "Error occurred: $($_.Exception.Message)" -ForegroundColor Red
}

見た目はこんな感じです。

条件付きアクセス ポリシーのエクスポート PowerShell スクリプトを実行する

Export-CAPolicies.ps1 PowerShell スクリプトを実行してすべてのポリシーを取得し、一時フォルダー内の JSON ファイルにエクスポートします。

C:scriptsExport-CAPolicies.ps1

出力には次が表示されます。

Successfully backed up CA policy: Block legacy authentication
Successfully backed up CA policy: Require multifactor authentication for all users

ポリシー名に特殊文字が含まれている場合、CA ポリシーのエクスポートに失敗することがあります。ポリシー名には特殊文字を使用せず、できるだけ単純な名前にすることをお勧めします。

条件付きアクセス ポリシーの JSON ファイルを開く

Export-CAPolicies.ps1 PowerShell スクリプトは、すべてのポリシーを JSON ファイルにエクスポートします。パス内の JSON ファイルを見つけますC:温度

お気に入りのアプリケーションで CA ポリシー JSON ファイルを開きます。たとえば、メモ帳、Notepad++、Visual Studio Code などです。

CA ポリシーの JSON ファイルは優れているようです。

これは、条件付きアクセス ポリシーを JSON ファイルにバックアップするのに役立ちましたか?

結論

PowerShell を使用して条件付きアクセス ポリシーをエクスポートする方法を学習しました。まず、Microsoft Graph PowerShell に接続し、Export-CAPolicies PowerShell スクリプトを実行します。その後、バックアップの理由から、すべての条件付きアクセス ポリシー構成が JSON ファイルで利用できるようになります。これは、条件付きアクセス ポリシーを別の Microsoft Entra テナントにインポートする優れた方法でもあります。

この記事は気に入りましたか?ユーザーごとの MFA から条件付きアクセス MFA への移行もお勧めします。ぜひフォローしてこの記事をシェアしてください。

Related Posts