この記事は更新から24ヶ月以上経過しているため、最新の情報を別途確認することを推奨いたします。
はじめに
Azureに限らずセキュリティ領域で対策すべき内容は複数あります。ネットワークセキュリティではDDos、FirewallやVPN、ホストセキュリティではエンドポイント、ディスク暗号化、リモートアクセス制御、コンテナセキュリティではプライベートレジストリの利用などが代表的な対策内容です。
これらの詳細は、本サイトの技術Blogで当社の優秀なエンジニアがご紹介しています。
そのような中、IDセキュリティというのは重要にもかかわらず、運用設計など開発の後工程で検討されることが多く結果、検討・対策が不十分で特権管理者が多く存在しそのまま運用フェーズに移行され、セキュリティリスクを抱えたまま引き継がれた運用担当者が後から苦労するという状況が経験上、想像されます。
本稿では、そのような状況にならないためにID保護を行うために事前に何を検討しておけば良いのかを記載します。
是非インフラ設計のポリシーとして開発工程の仕様検討時に取り入れ、後工程でタイムアップ(リリースが優先されてしまう)を避けていただければと思います。
検討項目
1.特権IDの整理する
ID管理は特権IDを無駄に作らない、ということがリスク低減の第一歩です。
AzureADにおいてはグローバル管理者の制限がポイントです。グローバル管理者は最上位特権としてほぼ全てのアクションを行えるので注意が必要です。Azureのベストプラクティスとして、この役割を組織内の 5 人未満のユーザーに割り当てることが推奨されています。組織のグローバル管理者の役割に割り当てられている管理者が 5 人を超える場合は、その使用を減らす方法として以下のような機能別の管理者を割り当てることを推奨します。
・アプリケーション管理者 – エンタープライズ アプリケーション、アプリケーション登録の設定が可能
・認証管理者 – ユーザーのパスワード以外の資格情報を設定またはリセットでき、すべてのユーザーのパスワード更新が可能
・Azure DevOps 管理者 – Azure DevOps ポリシーを管理することが可能
・Azure Information Protection(AIP) 管理者 – AIP サービスの全権限を所持
・課金管理者 – 購入、サブスクリプション管理、サポート管理、サービス状態をチェック
その他、コンプライアンス管理者、条件付きアクセス管理者、グループ管理者、セキュリティ管理者など多岐にわたります。これら役割を理解し、必要なアカウントに割り当てるという設計を当初に実装しておけば運用評価などで課題を見つけ出し妥当な設定が可能となります。リリース後に見直すという場合、再評価が必要などリスクと手間が出てくるものです。
管理者の役割については、以下URLを参照ください。
Azure AD ロールの説明とアクセス許可 – Azure Active Directory | Microsoft Docs
2.多要素認証を導入する
Azure Multi-Factor Authentication (MFA) を利用すれば、2つ目の認証を要求することでセキュリティを追加し、使い勝手の良いさまざまな認証方法によって強力な認証を与えます。
Azureのメソッドでは、「電話をかける」「電話へのテキスト メッセージ送信」「モバイル アプリによる通知」「モバイル アプリからの確認コード」が選択可能です。
システム保守環境により上記選択肢から選ぶことになりますがインターネット接続前提で社用端末(スマートデバイス)があれば「モバイル アプリによる通知」が便利かと思います。(MDMでアプリ許可するなど情報システム部門との連携、すり合わせが必要です)
また、認証を行う上では、条件付きアクセスを利用し、信頼できるIPからはMFAをスキップ可能とするなどセキュリティと利便性のトレードオフを検討した上で実装してください。
3.不正アクセスを監視する
ID管理を行う上で正常にアクセスしているのかを定点観測し、なりすましなどアカウント乗っ取りがされていないかを監視します。
便利な機能としては、アカウントロックアウトを利用します。
アカウント ロックアウトは、攻撃の一環として MFA の試行が繰り返し行われるのを防ぐため、アカウント ロックアウト設定では、アカウントが一定期間ロックアウトされるまでに試行を失敗できる回数を指定できます。
閾値を超えた場合には電子メールでID管理者に通知されますので、この際の対応プロセスを事前に定義しておくことを推奨します。
4.Azure AD Identity Protectionを適用する
ID 保護は、リスクの検出と修復を自動化します。
ID 保護ポリシー、Azure MFA 登録ポリシー、サインイン リスク ポリシーの3つのポリシーを軸に設定可能で、管理者の負担軽減を行うためのツールです。詳細は以下URLを参照ください。
https://docs.microsoft.com/ja-jp/azure/active-directory/identity-protection/overview-identity-protection
このツールはAzure AD Premium P2 ライセンスが必要になりますので、本機能を実装するためにP2ライセンスを購入、という場合は費用対効果を説明し稟議を通す、ということは難しいかもしれませんのでP2ライセンスで実装可能なその他機能の導入も併せて検討してください。
運用フェーズでの監視
1.Azure AD アクセス レビュー
Azure Active Directory (Azure AD) アクセス レビューを使用することで、組織はグループ メンバーシップ、エンタープライズ アプリケーションへのアクセス、ロールの割り当てを効率的に管理できます。ユーザーのアクセス権を定期的に見直して、適切なユーザーのみがアクセスを継続できるようにすることができます。
セキュリティセンターでAzure ADのセキュリティ対策が必要な事項が表示されますので、定期的にチェックいただくような運用を推奨します。
2.セキュリティセンターのスコアをチェックする
セキュリティセンターの利用目的の1つに、現在のセキュリティ状況を理解し、セキュリティを効率的かつ効果的に改善するための推奨事項をシステムから提示されることがあります。この指標となるのがセキュア スコアです。
以下画像を例にするとMFAの有効化や権限の見直しなどが推奨され、これらを改善するとスコアがアップします。運用ではスコアの定期見直しを行い、セキュアな状態を維持する事が重要となります。
ID管理に限らず、仮想マシン等のリソース、サブスクリプションのセキュリティ問題を全般的に評価、スコア化しますので運用担当者はセキュリティ状況を一目で確認出来ます。ます: スコアが高いほど、特定されたリスク レベルは低くなります。スコアを使用して、プロジェクト内のセキュリティ指標を予めて定義しておくことを推奨します。詳細は以下URLを参照ください。
https://docs.microsoft.com/ja-jp/azure/security-center/secure-score-security-controls