LoginSignup
0
0

More than 1 year has passed since last update.

Azure IAMのスコーピングについて / Scoping of Azure IAM configuration

Posted at

はじめに

Azureユーザーへのロール割り当てにおいて、権限範囲をきちんと分けて担当外のリソースは設定変更できないようにしてみました。具体的には以下2つを実装しました

  1. 特定のスコープで特定の操作のみを許可する: 今回は1サブスクリプションをリソースグループで分けて使っている場合を想定し、リソースグループをスコープとしました(複数サブスクリプションを使い分けている(例: 開発用と本番用とか)の場合は、サブスクリプションがスコープになると思います)
  2. リソース毎のロール割当はしない(細かくなりすぎて管理が難しくなる)

ちなみにベストプラクティスのドキュメントには「ユーザー毎ではなくセキュリティグループに対してロールを割り当てるべし」とありますが、今回の対象はユーザー数が管理しきれる範囲内(10名前後)なので、ユーザー毎に割り当てています

設定手順

  • Azure Portalでの操作に関するドキュメントはこちら

手順

  1. 数名の所有者を残し、サブスクリプションのIAMから全ロールを削除する
  2. その後リソースグループのIAMにおいて、必要なメンバーに対し適切なロールを設定する

(1.まずこの状態にする)
1.png
2.png

(2.次にリソースグループ毎にロールを割り当てる)
3.png

注意点

  • リソースグループのIAMから「サブスクリプション(継承済み)」であるロール割当を削除すると、サブスクリプションレベルで削除がなされます
  • Azureのロール設定は加算方式のため、サブスクリプションレベルで所有者や共同作成者の場合、リソースグループレベルで閲覧者を設定してもoverrideできず効果がありません

  • 「従来の管理者」タブのロールはサブスクリプション所有者ロールに相当するので、あわせて削除する。但し共同管理者以外は削除できません

サブスクリプションのレベルにおいて、権限的に強いロール(所有者や"従来の管理者"のサービス管理者等)を持つユーザーに対する制約のかけ方

単にロールを削除するだけだと、他ユーザーにロール割当ができなくなって普段の運用に困ったり、そもそもロールの削除自体できなかったりします("従来の管理者"のサービス管理者)。

強い権限を持つユーザーは普段は使わず、別ユーザーを作りそれに対し適切なロールを割り当て、普段はそれを使う、が一番簡単です。

その上で更に、
- サブスクリプションレベルでは、強いロールは剥奪し代わりにユーザーアクセス管理者ロールを割り当てる
- その上で、リソースグループレベルで適切なロールを割り当てる

とすると、誤操作を防げてよりよいと思います
4.png

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0