Home > Windows にまつわる e.t.c.

Azure VM と JIT 操作だけを許可するロール付与方法


Azure VM の作成(とリソースグループ作成)、JIT の設定が出来るアカウントは「所有者」か「共同作成者(英語名:Contributor)」のロールを持っていれば良いのですが、これらのロールは上位ロールなので通常アカウントに付与するには強力すぎます。

Azure VMとリソースグループの作成/削除、JIT 操作だけを許可するのでしたら、操作に必要なロールだけを付与すれば過剰権限付与にならないので、セキュリティ的におすすめです。

 

VM 作成/削除に必要なロール

Azure VM 操作には、以下の組み込みロールを付与すれば操作可能になります。

仮想マシン共同作成者(英語名:Virtual Machine Contributor)
ネットワーク共同作成者(英語名:Network Contributor)
ストレージアカウント共同作成者(英語名:Storage Account Contributor)

 

リソースグループの作成/削除と JIT 設定に必要なロール

リソースグループの作成/削除と JIT 設定を可能にする組み込みロールは無いので、カスタムロールを作成します。

リソースグループを操作するには、以下の Actions を持ったカスタムロールが必要です

Microsoft.Resources/subscriptions/resourceGroups/read
Microsoft.Resources/subscriptions/resourceGroups/write
Microsoft.Resources/subscriptions/resourceGroups/delete

 

JIT を設定するには、以下の Actions を持ったカスタムロールが必要です

Microsoft.Security/locations/jitNetworkAccessPolicies/*
Microsoft.Security/*/read

 

JIT アクセスを要求に必要なロール

Azure VM の作成/削除をせず、リモートアクセスするために JIT アクセスを要求を可能にするには、組み込みロールと、カスタムロールが必要です。

 

組み込みロール

仮想マシンのユーザー ログイン(英語名:Virtual Machine User Login)

 

カスタムロール

Microsoft.Security/locations/jitNetworkAccessPolicies/read
Microsoft.Security/locations/jitNetworkAccessPolicies/initiate/action
Microsoft.Security/*/read

 

手順

カスタムロールの作成の作成と、ロール割り当ては以下の手順で進めます

カスタムロールの作成

カスタムロール名 概要 許可する Action
リソースグループ操作許可 リソースグルーブの作成と削除を許可する Microsoft.Resources/subscriptions/resourceGroups/read
Microsoft.Resources/subscriptions/resourceGroups/write
Microsoft.Resources/subscriptions/resourceGroups/delete
JIT 操作許可 JIT 設定を許可する Microsoft.Security/locations/jitNetworkAccessPolicies/*
Microsoft.Security/*/read
JIT リクエスター JIT アクセス要求を許可する Microsoft.Security/locations/jitNetworkAccessPolicies/read
Microsoft.Security/locations/jitNetworkAccessPolicies/initiate/Microsoft.Security/*/read

必要に応じカスタムロールを修正

Azure AD のグループにロールを付与

グループ名 業務内容 割り当てるロール
VM 作成者 VM、リソースグループの作成削除と、JIT 設定をする 仮想マシン共同作成者(組み込みロール)
ネットワーク共同作成者(組み込みロール)
ストレージアカウント共同作成者(組み込みロール)
リソースグループ操作許可(カスタムロール)
JIT 操作許可(カスタムロール)
VM 操作者 VM の作成/削除はせず、VM のリモート操作だけをする 仮想マシンのユーザー ログイン(組み込みロール)
JIT リクエスター(カスタムロール)

ロールを付与したグループにメンバー追加

 

カスタムロールの作成

以下のカスタムロールを作成します

カスタムロール名 概要 許可する Action
リソースグループ操作許可 リソースグルーブの作成と削除を許可する Microsoft.Resources/subscriptions/resourceGroups/read
Microsoft.Resources/subscriptions/resourceGroups/write
Microsoft.Resources/subscriptions/resourceGroups/delete
JIT 操作許可 JIT 設定を許可する Microsoft.Security/locations/jitNetworkAccessPolicies/*
Microsoft.Security/*/read
JIT リクエスター JIT アクセス要求を許可する Microsoft.Security/locations/jitNetworkAccessPolicies/read
Microsoft.Security/locations/jitNetworkAccessPolicies/initiate/Microsoft.Security/*/read

 

カスタムロールの作り方(リソースグループ操作許可編)

リソースグループを操作できるようにするカスタムロールを作るには、「所有者」か「共同作成者」で「サブスクリプション」の「アクセス制御(IAM)」で「カスタムロールを作成する」で作成します。

カスタムロールの作成

 

カスタムロール名

 

アクセス許可の追加

 

Action の一部を入力すると対象が絞られる

 

Action に追加する操作を選択し追加

 

次へ

 

次へ

 

生成された JSON を確認して次へ

 

作成し OK

 

カスタムロールの作り方(JIT 操作許可編)

JIT を設定できるようにするには、直接カスタムロールの JSON を編集します

これは、JIT 操作のように * で操作許可する場合は、GUI で対象操作をポチポチ出来ないので、直接 JSON を編集します。
(JIT の許可は、許可する操作が多すぎて GUI ポチポチは現実的ではない)

カスタムロールの作成

 

他の設定は不要なので JSON まで一気に進める

 

編集

 

actions に許可する操作を追加(カンマを忘れないように)し、保存

 

次へ

 

作成し OK

 

カスタムロールの作り方(JIT リクエスター編)

JIT アクセス要求のカスタムロールは、GUI ポチポチと JSON 編集の両方で作成します。(全て JSON 編集でも OK)

カスタムロールの作成

 

アクセス許可の追加

 

Microsoft.Security/locations/jitNetworkAccessPolicies で対象を絞る

 

読み取りとその他を追加する

 

JSON まで飛ばす

 

編集モードにして Microsoft.Security/*/read を追加し(カンマを忘れずに)保存

 

内容を確認し、作成

 

カスタムロールの修正

カスタムロールのを修正する場合は、「役割」を開いて、該当カスタムロールを編集します。

 

Azure AD のグループにロールを付与

ロールの割り当ては、AzureAD のグループに対して設定がお勧めです。
こうすれば、グループにメンバーを追加するだけでロールの割り当てが完了します。

個々のアカウントにロール割り当てしても良いのですが、ロール割り当て操作が面倒なのであまりお勧めしません。

今回は以下のグループを作成してみました

 

グループ名 業務内容 割り当てるロール
VM 作成者 VM、リソースグループの作成削除と、JIT 設定をする 仮想マシン共同作成者(組み込みロール)
ネットワーク共同作成者(組み込みロール)
ストレージアカウント共同作成者(組み込みロール)
リソースグループ操作許可(カスタムロール)
JIT 操作許可(カスタムロール)
VM 操作者 VM の作成/削除はせず、VM のリモート操作だけをする 仮想マシンのユーザー ログイン(組み込みロール)
JIT リクエスター(カスタムロール)

 

グループへのロール割り当ては、「アクセス制御(IAM)」の「ロールの割り当てを追加する」で割り当てます。

ロールの割り当てを追加する

 

役割を選択し、グループ名入力し保存する

 

これを繰り返してロールを割り当てます。

ロールの割り当て確認は、「ロールの割り当て」で確認します

 

関連情報

JIT で Azure VM を保護する
http://www.vwnet.jp/Windows/Azure/2020081101/JIT.htm

 

参考情報

Azure 組み込みロール - Azure RBAC | Microsoft Docs
https://docs.microsoft.com/ja-jp/azure/role-based-access-control/built-in-roles?WT.mc_id=AZ-MVP-36880

 

Azure portal を使用して Azure カスタム ロールを作成または更新する - Azure RBAC | Microsoft Docs
https://docs.microsoft.com/ja-jp/azure/role-based-access-control/custom-roles-portal?WT.mc_id=AZ-MVP-36880

 

Azure カスタム ロール - Azure RBAC | Microsoft Docs
https://docs.microsoft.com/ja-jp/azure/role-based-access-control/custom-roles?WT.mc_id=AZ-MVP-36880

 

 

back.gif (1980 バイト)

home.gif (1907 バイト)

Copyright © MURA All rights reserved.