この記事は更新から24ヶ月以上経過しているため、最新の情報を別途確認することを推奨いたします。
こんにちはパーソルプロセス&テクノロジーの内田です。
今回はAzure AD Premium P2 ライセンスにて提供されるPIM(Privileged Identity Management)サービスを検証する機会がありましたので、本サービスの概要と画面イメージをお伝えしたいと思います。
Privileged Identity Managementとは
内容に入る前に、まずはPIMとはどういったサービスなのか説明します。
正式名称はPrivileged Identity Management、日本語に直訳すると特権ID管理となります。
これを理解するために、まずはAzure標準のアクセス制御方式について理解しましょう。
Azureサービスでは役割ベースで特定の操作のみを許可(または拒否)するアクセス制御方式としてRBAC(Role Base Access Control)を採用しています。特定の操作群のことをRole(役割)、アクセスの割当先のことをScopeと呼びます。Roleを適切なScopeの範囲で、ユーザーやグループに割り当てることで、アクセス制御を実装しています。
ざっくり言ってしまえば、職務に応じて適切な範囲でやって良いことを決められる仕組みとなります。
Azureサービスのシステム運用をRBACだけでのアクセス制御にて実現した場合、どうなるでしょうか?
例えば普段の業務内容は保守業務としてログ・監視を担っている人がいたとします。有事の際にはシステムの復旧をする必要がありますが、通常時からAzureサービスをデプロイできる権限を与えてしまうことは、オペレーションミスによるシステム破壊のリスクが少なからずあります。
もしくは、あるAzureサービスを利用するために外部のベンダーに構築を依頼したとします。外部のベンダーに対して、設計フェーズでは閲覧権限を与え、構築フェーズではデプロイ権限を、そしてプロジェクトが終了した後には一切の権限を忘れずに削除する必要があります。
一口にアクセス制御といっても、時や場合によって上位のアクセス権が必要になったり、アクセス権の定期的な見直しといった業務が発生することが想像できるのではないでしょうか。
PIMとは、本来であれば管理者が手動で実施する必要のある「ロール管理業務」を自動化するサービスなのです。
PIMでできること
PIMの主な機能として、公式ドキュメントでは以下に示すものが紹介されています。
・Azure AD と Azure のリソースに対する Just-In-Time の特権アクセスを提供する
Azure AD Privileged Identity Management とは
・開始日と終了日を使用した 期限付き アクセス権をリソースに割り当てる
・特権ロールをアクティブ化するために 承認 を要求する
・ロールをアクティブ化するために 多要素認証 を強制する
・なぜユーザーをアクティブ化するのかを把握するために 理由 を使用する
・特権ロールがアクティブ化されたときに 通知 を受ける
・継続してユーザーにロールが必要であることを確認するために アクセス レビュー を実施する
・社内監査または外部監査に使用する 監査履歴 をダウンロードする
https://docs.microsoft.com/ja-jp/azure/active-directory/privileged-identity-management/pim-configure#what-does-it-do
PIMで登場する用語について
実際に検証を進める中でつまずいたポイントでもあるのですが、PIMで登場する用語は複雑です。きちんと理解しておかなければ、想定と異なる設定をしてしまうことがありますので、しっかりと把握しておきましょう。
ActiveとEligible
PIMにおけるロールの種類は大きくActiveとEligibleの2種類に分類することができます。
- Active(アクティブ)
この種類のロールを割当てられたユーザーは、アクティベーションの操作を必要とせずに、そのロールが常にアクティブ化される。 - Eligible(有資格)
この種類のロールを割当てられたユーザーは、そのロールをアクティベートする資格を有し、アクティベートすることによって、最大24時間そのロールをアクティブ化することができる。
普段使いのロールを割当てる際には「Active」タイプのロールを割当てて、特権ロールに関しては「Eligible」で割当てる(特権ロールを申請する資格がある)ということになります。
Permanent activeとExpire active
それぞれのロールはさらにPermanentとExpireに分けられます。
- Permanent active
何もアクションを実行せず、ユーザーはそのロールを常に使用できる。 - Expire active
指定された開始日と終了日の範囲内であれば、何もアクションを実行しなくてもユーザーはそのロールを使用できる。
永久的に権限を与えるか、期限付きの権限を与えるかということになります。簡素ですが、図示すると以下のようになります。
Permanent eligibleとExpire eligible
activeタイプと同様にeligibleについてもPermanentとExpireに分類されます。
- Permanent eligible
ユーザーはロールをアクティブ化する資格を常に持つ。 - Expire eligible
ユーザーは指定された開始日と終了日の範囲内でロールをアクティブ化する資格を持つ。
こちらも簡素ですが図示すると以下のようになります。
ちなみに私はeligibleをしっかり理解していなかったために、当初ここでつまずきました。同じように誤って解釈される方がいらっしゃると思うので、私の勘違いを記載します。
****ここから下は、私の勘違いを記載しています。****
Permanent eligibleタイプでロールを割当てられたユーザーは、そのロールを申請する資格を有し、その申請が承諾された場合は永久的にそのロールがアクティベートされる。
一方でExpire eligibleタイプでロールを割当てられたユーザーは、そのロールを申請する資格を有し、その申請が承諾された場合は期限付きでそのロールがアクティブされる。
****ここから上は、私の勘違いを記載しています。****
eligibleとは資格が有ることを示します。何の資格かというと、ロールを申請する資格です。Permanent/Expire eligibleとは、ロールを申請する資格を永久に有しているのか、期限付きで有しているのかであり、申請後のアクティブな期間とは関係ないことを理解しておきましょう。
※申請者は申請時にいつから使用したいかをリクエストすることができます。なお、アクティブな期間は最大で24時間です。
PIMを用いた特権の申請フローと実際の画面
最後に一例となりますが、PIMを用いた申請フローと、申請者・承認者それぞの画面イメージをご紹介します。
上図は特権ロールを申請する際の申請者、PIM、承認者で必要なアクションを示しています。
まず、申請者はAzure Portalから特権ロールを申請(アクティブ化)します。
※申請者は申請する資格を有する、つまり該当ロールがEligibleタイプで割り当てられていることが前提条件です。
申請する際には、なぜそのロールを申請するのか理由を記載します。申請処理が正常に終了すると、Azure Portalの通知欄に「要求の承認は保留中です」と表示されます。
PIMは申請者の要求を処理し、構成情報に基づいて承認者に承認依頼を送ります。承認者は同じくAzure Portalにて、申請を承認または拒否することができます。
なおPIMは申請要求を受け取った際に承認者に対してメールで通知を行いますので、承認者はAzure Portalにサインインせずに申請があがったことを知ることができます。またメール本文のボタンをクリックすることで、簡単にAzure Portalの承認ページへ遷移することが可能です。
最後に
いかがでしたでしょうか。今回のブログではPIMサービスの概要と、実際の申請フロー&画面イメージをご紹介しました。今回取り上げた機能はPIMの数多くある機能のほんの一部であり、この他にも「アクティブな期限が迫ってきた際に延長の申請をする」、「期限が切れてしまったロールを再申請する」、「誰がいつ申請・承認したかを監査ログとして保存する」等々、数多くの機能を利用することが可能です。
PIMの導入を検討している、またはクラウドサービスを安全に利用したいけれどもどこから手をつければよいかわからないなどございましたら、是非お気軽に弊社までご連絡ください。