【 Update-MgIdentityConditionalAccessPolicy 】コマンドレット――Microsoft Entra ID(旧Azure AD)の条件付きアクセスポリシーを変更するWindows PowerShell基本Tips(84)

本連載は、PowerShellコマンドレットについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は「Update-MgIdentityConditionalAccessPolicy」コマンドレットを解説します。

» 2023年09月22日 05時00分 公開
[国井傑株式会社エストディアン]

この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。

「Windows PowerShell基本Tips」のインデックス

連載目次

 本連載では、Windows PowerShellの基本的なコマンドレットについて、基本的な書式からオプション、具体的な実行例までを分かりやすく紹介していきます。今回は、「Microsoft Entra ID」(旧称:Microsoft Azure Active Directory)の条件付きアクセスポリシーの設定を変更する「Update-MgIdentityConditionalAccessPolicy」コマンドレットです。

Update-MgIdentityConditionalAccessPolicyコマンドレットとは?

 「Update-MgIdentityConditionalAccessPolicy」は、PowerShellを利用してMicrosoft Entra IDに作成された既存の「条件付きアクセスポリシー」の設定を変更するためのコマンドレットです。

 本連載第78回で解説した「New-MgIdentityConditionalAccessPolicy」コマンドレットと組み合わせて使用することで、PowerShellから条件付きアクセスポリシーの新規作成と変更が管理できるようになるので、Infrastructure as Code(IaC)に基づいて運用するケースにおいて有効です。

 特に条件付きアクセスはポリシーの説明をGUIから設定できないため、コマンドレットで登録するパラメーターをGitHubなどで管理し、そこでコメントを入れて管理すれば、条件付きアクセスに関わる構成管理が容易になります。

 なお、Update-MgIdentityConditionalAccessPolicyコマンドレットは、本連載第45回で解説した「Connect-MgGraph」コマンドレットで「Connect-MgGraph -Scopes "Policy.ReadWrite.ConditionalAccess"」と実行して、Microsoft Entra IDへの接続とアクセス許可を与えておくことが前提条件になります。

Update-MgIdentityConditionalAccessPolicyコマンドレットの書式

Update-MgIdentityConditionalAccessPolicy [オプション]


Update-MgIdentityConditionalAccessPolicyコマンドレットの主なオプション

オプション 意味
-ConditionalAccessPolicyId 設定を変更する条件付きアクセスポリシーのポリシーIDを指定する
-BodyParameter 条件付きアクセスポリシーのパラメーターを指定する。省略可能
-State 条件付きアクセスポリシーの有効/無効を指定する。省略可能

条件付きアクセスポリシーの有効/無効を設定する

 Update-MgIdentityConditionalAccessPolicyコマンドレットを通じてポリシーの有効/無効を設定する場合は、「-ConditionalAccessPolicyId」オプションで設定を変更するポリシーを指定しなければなりません。

 そのため、最初に本連載77回で解説した「Get-MgIdentityConditionalAccessPolicy」コマンドレットで、ポリシー名に対応する「ポリシーID」を確認します(画面1)。

コマンドレット実行例

Get-MgIdentityConditionalAccessPolicy -Filter "displayName eq 'P001'"

画面1 画面1 Get-MgIdentityConditionalAccessPolicyコマンドレットの「-Filterオプション」を使用して、名前が「P001」のポリシーのポリシーIDを確認している

 その後、Update-MgIdentityConditionalAccessPolicyコマンドレットでConditionalAccessPolicyIdオプションでポリシーID、「-State」オプションで有効/無効を指定します(画面2)。

コマンドレット実行例

Update-MgIdentityConditionalAccessPolicy -ConditionalAccessPolicyId 14f6d822-f371-485d-a2ab-45ba44829e72 -State Enabled

画面2 画面2 -ConditionalAccessPolicyIdオプションで調べたポリシーIDを指定し、-Stateオプションに「Enabled」と入力することで、指定したポリシーが有効になるように指定している。ポリシーを無効する場合は「Disabled」と入力する

パラメーターを基にポリシー設定を変更する

 本連載第78回でも解説したように、条件付きアクセスポリシーはパラメーターを基に設定します。そのため、ポリシー設定を変更する場合は、変更箇所となるパラメーターを最初に作成します(画面3)。ここでは「全てのユーザーに多要素認証を要求する」というポリシーに対し、特定のユーザーはこのポリシーが除外されるように設定を変更しています。

画面3 画面3 パラメーターでは「Conditions」でポリシーに設定する条件を指定している。Conditions内で指定しているパラメーターでは、ポリシー対象外となるユーザー(ExcludeGroups)に特定のユーザーのオブジェクトID(「Get-MgUser」コマンドレットで確認可能)を指定している。なお、新規作成の場合とは異なり、設定変更するパラメーターだけを指定すればよい

 パラメーターの設定が完了したら、Update-MgIdentityConditionalAccessPolicyコマンドレットでパラメーターを登録します(画面4)。

コマンドレット実行例

$params = @{
    Users = @{
      includeUsers = @(
        "All Users"
      )
      ExcludeUsers = @(
        "de4e57c1-73e5-418e-a25f-ff67b7cf4b4c"
       )
    }
}


コマンドレット実行例

Update-MgIdentityConditionalAccessPolicy -ConditionalAccessPolicyId 14f6d822-f371-485d-a2ab-45ba44829e72 -BodyParameter $params

画面4 画面4 Update-MgIdentityConditionalAccessPolicyコマンドレットに続けて「-BodyParameter」オプションで$params変数を指定することで、前の手順で作成したパラメーターを基に条件付きアクセスポリシーの設定を変更している

筆者紹介

国井 傑(くにい すぐる)

株式会社エストディアン代表取締役。1997年からマイクロソフト認定トレーナーとして、Azure Active DirectoryやMicrosoft 365 Defenderなど、クラウドセキュリティを中心としたトレーニングを提供している。2007年からMicrosoft MVP for Enterprise Mobilityを連続して受賞。なお、テストで作成するユーザーアカウントには必ずサッカー選手の名前が登場するほどのサッカー好き。


Copyright © ITmedia, Inc. All Rights Reserved.

スポンサーからのお知らせPR

注目のテーマ

4AI by @IT - AIを作り、動かし、守り、生かす
Microsoft & Windows最前線2025
AI for エンジニアリング
ローコード/ノーコード セントラル by @IT - ITエンジニアがビジネスの中心で活躍する組織へ
Cloud Native Central by @IT - スケーラブルな能力を組織に
システム開発ノウハウ 【発注ナビ】PR
あなたにおすすめの記事PR

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。