最小権限の原則の解説(AWS認定クラウドプラクティショナーシラバス用語)

最小権限の原則の解説(AWS認定クラウドプラクティショナーシラバス用語)
目次

最小権限の原則とは

最小権限の原則.png

最小権限の原則(Principle of Least Privilege)とは、情報セキュリティにおける最も重要で基本的な考え方の一つであり、ユーザーやプログラムに対して「目的のタスク(業務)を実行するために必要不可欠な、最小限のアクセス権限のみを付与する」というルールです。AWS環境におけるIAM(Identity and Access Management)の設計・運用においても、この原則を遵守することが強く推奨(ベストプラクティス)されています。必要以上の権限を広範囲に与えてしまうと、誤操作によるシステム障害のリスクが高まるだけでなく、万が一パスワードやアクセスキーが第三者に悪意を持って窃取された際、被害の規模が壊滅的なものになる可能性があります。最初からすべての権限を絞っておき、必要な時に必要な分だけ権限を追加していくアプローチが、安全なクラウド運用の土台となります。

具体例

最小権限の原則を身近な例で考えてみましょう。あなたがレストランのオーナーだとして、新しく雇った「洗い場担当のアルバイト」に鍵を渡す状況を想像してください。
このアルバイトには「キッチンの入り口の鍵」だけを渡すのが正解です。これが最小権限の原則です。もし面倒くさがって「キッチンの鍵、金庫の暗証番号、レジのマスターキー、社長室の鍵」すべてがセットになったマスターキーを渡してしまったらどうなるでしょうか。アルバイトが誤って金庫を開けてしまったり、悪意のある人に鍵を盗まれた際に、お店の売上金まで奪われてしまう大惨事に繋がります。
AWS環境でも全く同じです。例えば、「新入社員のWebデザイナー」には、Webサイトの画像データが保存されている「特定のS3バケットへの読み書き権限」だけを付与します。決して「データベース(RDS)の削除権限」や「ネットワーク設定(VPC)の変更権限」を与えてはいけません。業務に全く関係のない権限を与えないことで、誤って本番のデータベースを削除してしまう「ヒューマンエラー(うっかりミス)」を物理的に防ぐことができます。

もう少し詳しく

AWSで最小権限の原則を実践するには、IAMポリシーの細やかな設定が不可欠です。IAMポリシーを作成する際、Effect(許可/拒否)、Action(実行可能な操作)、Resource(操作対象)を明確に指定します。例えば、「Amazon EC2のすべてのアクション(ec2:*)を許可する」のではなく、「EC2の起動(ec2:RunInstances)と停止(ec2:StopInstances)のみを許可する」といったように、Actionを絞り込みます。さらに、Resourceの指定においても「すべてのインスタンス(*)」ではなく、「特定のタグ(例:Environment = Development)が付与された開発環境のインスタンスのみ」に限定することで、権限の範囲を最小化できます。

また、AWS管理ポリシーの「AdministratorAccess(管理者権限)」は非常に強力であるため、本当に必要な少数の管理者にのみ付与すべきです。さらに、権限は一度付与して終わりではありません。「AWS IAM Access Analyzer」などのツールを活用して、長期間使用されていない過剰な権限を見つけ出し、定期的に権限を剥奪(縮小)していく継続的なレビューのプロセスも、最小権限の原則を維持するために重要です。加えて、一時的な作業のために権限が必要な場合は、恒久的な権限をIAMユーザーに付与するのではなく、「IAMロール」を用いて一時的な権限を貸し出すアプローチを取ることも、この原則に沿ったベストプラクティスと言えます。

試験でのポイント

AWS認定クラウドプラクティショナー(CLF-C02)試験において、最小権限の原則は「セキュリティとコンプライアンス」分野の核となる概念として出題されます。
試験では「セキュリティのベストプラクティスとして正しいものはどれか」という問題で、「ユーザーにはタスクの実行に必要な最小限の権限のみを付与する」という選択肢が頻繁に正解となります。
逆の選択肢として「すべてのユーザーに最初はフルアクセス権限を与え、後から不要なものを制限する」「管理を楽にするために全員にAdministrator権限を付与する」といったものが登場しますが、これらはセキュリティ上非常に危険であり、明確な誤りです。
IAMポリシーの基本概念とセットで「必要な人に、必要な時に、必要なリソースへの、必要な操作のみを許可する」というキーワードを確実にインプットしておきましょう。

関連する用語

関連用語として、この原則を実現するための具体的なルールを定義する「IAMポリシー」、権限付与の対象となる「IAMユーザー」や「IAMロール」があります。これらを組み合わせて強固なセキュリティ基盤を構築します。

読んだ内容を10問練習と実技で確認

記事で理解した用語を、StudyQuestの演習とクラウド実技ラボで定着させます。

10問練習 実技ラボ