Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Azureの基本的な権限管理の勉強会

Sponsored · SiteGround - Reliable hosting with speed, security, and support you can count on.
Avatar for yhana yhana
April 25, 2024

 Azureの基本的な権限管理の勉強会

Avatar for yhana

yhana

April 25, 2024
Tweet

More Decks by yhana

Other Decks in Technology

Transcript

  1. 2 もくじ 1. Azure の権限管理 2. Azure ロールの割り当て例 3. 特権管理機能

    4. 他の Entra ID テナントの Azure サブスクリプションにロール割り当て 5. ユーザー以外へのロール割り当て
  2. 4 Entra ID とAzure サブスクリプションの関係 ID およびアクセス管理を提供する Microsoft Entra ID

    (旧 Azure AD) と Azure サブスクリプショ ンは密接に関係しており、Azure ポータルから両⽅操作できるが、別々に考える必要がある Microsoft Entra ID Azure サブスクリプション 信頼関係
  3. 5 Entra ID とAzure サブスクリプションの関係 ID およびアクセス管理を提供する Microsoft Entra ID

    (旧 Azure AD) とAzure サブスクリプショ ンは密接に関係しており、Azure ポータルから両⽅操作できるが、別々に考える必要がある AWS で例えると、AWS IAM と AIAM Identity Center が AWS アカウントから切り離されている イメージ Microsoft Entra ID Azure サブスクリプション 信頼関係 AWS IAM AWS IAM Identity Center AWS account AWS IAM, AWS IAM Identity Center 以外のリソース
  4. 6 Entra ID とAzure サブスクリプションの関係 Entra ID にはドメインを設定して、ドメインを付与したユーザーを作成する 複数の Azure

    サブスクリプションや他のアプリケーションを関連付けできる Entra ID の旧称が Azure AD だからといって Azure のためだけに存在するわけではない Microsoft Entra ID Azure サブスクリプション Azure サブスクリプション [email protected] カスタムドメイン example.com Microsoft 365
  5. 7 Entra ID ロールと Azure ロール ロールベースのアクセス制御(RBAC)で権限を与える Entra ID と

    Azure に対応した「Microsoft Entra ID ロール」と「Azure ロール」がある 名前の通り、それぞれの製品に対する権限を与えることができ、別々に関連付ける必要がある Azure サブスクリプション Microsoft Entra ID ユーザー Microsoft Entra ID ロール Azure ロール
  6. 8 Entra ID ロールと Azure ロール Entra ID のポータル画⾯(Azure ポータルもしくは

    Microsoft Entra 管理センター)において、 「Microsoft Entra ID ロール」と「Azure ロール」の割り当て状況を確認する項⽬も異なる Microsoft Entra ロールの割り当て確認 Azureロールの割り当て確認
  7. 9 組み込みロール ロールには、事前定義された「組み込みロール」が存在する Microsoft Entra ID ロールの組み込みロール例 Azure ロールの組み込みロール例 ロール名

    説明 グローバル管理者 Entra ID の全ての管理機能にアクセスできる権限、組織内で 5 名未満にすることがベストプラクティス ユーザー管理者 ユーザーの作成、更新、削除などができる権限 ロール名 説明 所有者 全てのリソースにアクセスできる権限 共同作成者 全てのリソースにアクセスできるが、ロールを割り当てることはできない権限 閲覧者 リソースを表⽰する権限 Microsoft Entra ID ビルドインロール⼀覧 Azure 組み込みロール
  8. 10 カスタムロール 独⾃にロールを定義する「カスタムロール」もある 組み込みロール同様に管理グループ、サブスクリプション、リソースグループ等に割り当てできる (引⽤元)Azure カスタム ロール - Azure RBAC

    | Microsoft Learn 仮想マシンの監視と再起動の権限を与えるカスタムロール例 { "Name": "Virtual Machine Operator", "Id": "88888888-8888-8888-8888-888888888888", "IsCustom": true, "Description": "Can monitor and restart virtual machines.", "Actions": [ "Microsoft.Storage/*/read", "Microsoft.Network/*/read", "Microsoft.Compute/*/read", "Microsoft.Compute/virtualMachines/start/action", "Microsoft.Compute/virtualMachines/restart/action", "Microsoft.Authorization/*/read", "Microsoft.ResourceHealth/availabilityStatuses/read", "Microsoft.Resources/subscriptions/resourceGroups/read", "Microsoft.Insights/alertRules/*", "Microsoft.Insights/diagnosticSettings/*", "Microsoft.Support/*" ], "NotActions": [], "DataActions": [], "NotDataActions": [], "AssignableScopes": [ "/subscriptions/{subscriptionId1}", "/subscriptions/{subscriptionId2}", "/providers/Microsoft.Management/managementGroups/{groupId1}" ] } カスタムロールのプロパティ説明
  9. 13 Azure ロールの割り当て 下位のスコープに異なるロールの割り当てもできる サブスクリプション リソースグループA Virtual Machines Virtual Network

    リソースグループB … 閲覧者 共同作成者 リソースグループBを スコープとして割り当て サブスクリプションを スコープとして割り当て
  10. 15 Azure ロールの割り当て サブスクリプションをスコープとした Azure ロールの割り当て設定の例 割り当てるロールの選択 割り当てるユーザー、グループ、 サービスプリンシパル、マネージド ID

    (※) の選択 設定の検証と確認画⾯ ※︓サービスプリンシパルやマネージド ID は Azure リソースや登録されたアプリケーションに対してロールを割り当てる場合に利⽤される
  11. 17 Azure ロールの割り当て Azure CLI (Bash) でロールを割り当てるコマンド例 az role assignment

    create --assignee "{assignee}" --role "{roleNameOrId}" --scope "/subscriptions/{subscriptionId}” サブスクリプションにロールを割り当てるコマンド例 (参考情報) Azure CLI を使⽤して Azure ロールを割り当てる - Azure RBAC | Microsoft Learn az role assignment create --assignee "{assignee}" --role "{roleNameOrId}" --scope "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}" リソースグループにロールを割り当てるコマンド例
  12. 21 (参考)個⼈で Azure を契約したときの状態 個⼈で Azure を契約(MOSP 契約)した状態では、onmicrosoft.com ドメインの Entra

    ID テナン トが作成され、個⼈の Microsoft アカウントに関するユーザーが作成されている(と理解している) そのユーザーに特権の「Microsoft Entra ID ロール」と「Azure ロール」が割り当てられており、 Entra ID と Azure サブスクリプションを⾃由に操作できる状態になっている Microsoft Entra ID Azure サブスクリプション ユーザー user_example.com#EXT#@userexample.onmicrosoft.com (外部の「Microsoft アカウント」であり、「職場または学校アカウント/組織アカウント」として作成されたものではない) ⾃動で⽣成されているドメイン userexample.onmicrosoft.com Microsoft Entra ID ロール グローバル管理者 Azure ロール 所有者 メールアドレス「[email protected]」の Microsoft アカウントで Azure を契約した場合のイメージ 信頼関係
  13. 22 Azure ロールの割り当て Microsoft Defender for Cloud などのサブスクリプション全体を対象とするサービスやサブスクリ プションを跨るサービスのロール割り当てでは、スコープがリソースではない場合もある Azure

    ポータルの左上の表記を⾒ることでどのスコープを対象にすればよいかのヒントがある Defender for Cloud において、 単⼀のサブスクリプションのセキュリティイベントを 表⽰していることの記載例 Defender for Cloud において、 テナント全体のサブスクリプションにアクセスするためには、 ルート管理グループに対してロールを割り当てる必要がある説明
  14. 24 Azure ロールの割り当て例 Azure ロールの割り当て例を⽰す - リソースグループをシステム毎に分ける - すべてのユーザー(が含まれるグループ)に、サブスクリプションに対する「閲覧者」を割り当て -

    システム管理者ユーザー/グループに、リソースグループに対する「所有者」を割り当て - システム管理者は必要に応じて、他ユーザーにロールを割り当て
  15. 27 資格のある割り当てとアクティブな割り当て Entra ID のロールには「資格のある割り当て」と「アクティブな割り当て」の考え⽅がある 特権管理を提供する PIM (Privileged Identity Management)

    機能を利⽤している Microsoft Entra ID ロール グローバル閲覧者 資格のある割り当て アクティブな割り当て ユーザー Microsoft Entra ID Microsoft Entra ID ロール グローバル閲覧者 ユーザー Microsoft Entra ID 資格のある割り当てから利⽤したいロールをアクテイブ化 割り当て終了の時刻指定 or 永続的な割り当て アクセス可能
  16. 28 資格のある割り当てとアクティブな割り当て Azure ロールも PIM (Privileged Identity Management) 機能を利⽤して同様の運⽤ができる PIM

    の機能により承認フェーズを設けることもできる (参考ブログ)Azure AD Privileged Identity Managementによる特権アクセス管理を試してみた (引⽤元)PIM の活⽤⽅法 | Japan Azure Identity Support Blog
  17. 31 テナントに招待してロールを割り当て Entra ID テナントに他のテナントのユーザーを招待してロールを割り当てすることもできる つまり、1つのユーザーで他のテナントと信頼関係にある Azure サブスクリプションの操作ができる Microsoft Entra

    ID - B Azure サブスクリプション - B ユーザー(ゲスト) [email protected] カスタムドメイン b.example.com Microsoft Entra ID - A ユーザー [email protected] カスタムドメイン a.example.com 同⼀ユーザーで他のテナントを利⽤できる 招待
  18. 32 テナントに招待してロールを割り当て Entra ID テナントに他のテナントのユーザーを招待してロールを割り当てすることもできる つまり、1つのユーザーで他のテナントと信頼関係にある Azure サブスクリプションの操作ができる Microsoft Entra

    ID - B Azure サブスクリプション - B ユーザー(ゲスト) [email protected] Microsoft Entra ID - A ユーザー [email protected] Azure ロール 共同作成者 同⼀ユーザーで他のテナントを利⽤できる 招待 カスタムドメイン b.example.com カスタムドメイン a.example.com
  19. 34 テナントに招待してロールを割り当て 複数のテナント内のサブスクリプションに対してロール割り当てがある場合でも、テナントを切り替 えていない場合は、リソース作成時に他のテナントのサブスククリプションを指定できない Microsoft Entra ID - B サブスクリプション

    – B1 Microsoft Entra ID - A サブスクリプション – B2 サブスクリプション – A1 サブスクリプション – A2 ユーザー(ゲスト) [email protected] ユーザー [email protected] 招待 「Microsoft Entra ID - A」テナントを選択している場合 選択可能なサブスクリプション ・サブスクリプション - A1 ・サブスクリプション - A2 B1, B2 は表⽰されない
  20. 36 Azure リソースへのロール割り当て マネージド ID という機能を⽤いて Azure リソースに権限を与えられる 例えば、VM (Virtual

    Machine) リソースに対して、Azure Key Vault へのアクセス権を付与する Virtual Machine Azure Key Vault Entra Managed Identity Azure ロール ロールの割り当てにおけるメンバーとしてマネージド ID を選択
  21. 37 Azure リソースへのロール割り当て マネージド ID には 2 種類ある(VM の例で説明) Virtual

    Machine Entra Managed Identity Virtual Machine Entra Managed Identity Virtual Machine Entra Managed Identity Virtual Machine Virtual Machine Entra Managed Identity Virtual Machine システム割り当てマネージド ID - VM リソースから直接有効化できる - VM 毎にマネージド ID は異なる(各 VM で有効化) - VM の削除される場合にマネージド ID も削除される ユーザー割り当てマネージド ID - VM とは独⽴したリソースとしてマネージド ID を作成する - 複数の VM に割り当てることができる - VM を削除してもマネージド ID は削除されない
  22. 38 Azure リソースへのロール割り当て マネージド ID には 2 種類ある(VM の例で説明) システム割り当てマネージド

    ID の有効化イメージ VM リソースの機能から有効化できる ユーザー割り当てマネージド ID の設定イメージ マネージド ID を作成後に VM に割り当てる
  23. 39 オンプレミス等からのアクセス 次の場合は、サービスプリンシパル(アプリまたはサービスを表す ID)を使⽤した認証で Azure リソースへの アクセス権を与えられる - アプリケーションまたはサービスがオンプレミスで実⾏されている -

    アクセスする必要があるリソースまたはアプリケーションでマネージド ID がサポートされていない Entra ID において「アプリの登録」 登録したアプリにおいて 証明書 or シークレットを設定 ロールの割り当てにおいて メンバーとしてサービスプリンシパル (登録したアプリ)を選択 Microsoft Entra ID リソースグループ App / サービスプリンシパル Azure ロール オンプレミス App ① ② ③
  24. 40 より詳しい内容は Microsoft Learn サービスプリンシパルとマネージド ID についてより詳しい内容は Microsoft Learn が参考になる

    Azure リソースのサービス プリンシパルとマネージド ID を使⽤して Azure サービスにアプリを認 証する - Training | Microsoft Learn
  25. 41