AWS活用のガードレール「IAM」の「Permissions Boundary」でアクセス境界を設定するには:AWSチートシート
「Amazon Web Services」(AWS)活用における便利な小技を簡潔に紹介する連載「AWSチートシート」。今回は、「AWS IAM」の「Permissions Boundary」を利用したアクセス境界の設定について。
「Amazon Web Services」(AWS)活用における便利な小技を簡潔に紹介する連載「AWSチートシート」。
利用者によるAWSリソースに対するアクセスと認証を管理する「AWS Identity and Access Management」(IAM)は、AWSを使うなら最初に学習、利用するサービスの一つといっていいほど基本的なサービスです。
多くの人にとっては「IAMユーザー」「IAMグループ」「IAMロール」「IAMポリシー」といった基本的な機能の使い方を押さえておけば事足りてしまいますが、IAMをより一歩踏み込んで利用する機能を何回かに分けて紹介します。
今回の記事では、「Permissions Boundary」を利用したアクセス許可の境界を設定する方法を見ていきましょう。
Permissions Boundaryは、どんなときに利用するといいのか?
Permissions Boundaryは、IAMユーザーやIAMロールを発行する際に、そのIAMユーザーやIAMロールが利用できる操作の範囲を制限する機能です。
この説明だけではイメージを持ちづらいと思いますので、具体的な利用シーンを想像してみましょう。
例えば、開発者が「AWS Lambda」を実行するIAMロールを必要としている場合を考えてみてください。あなたがAWS環境の管理者だったとして、開発者に自分で必要なIAMロールを自由に発行できる権限を付与するでしょうか?
IAMロールの作成を許可してしまうと、開発者に付与している権限を超えたIAMロールを作成してそれを利用できるようになってしまいます。IAMロールにアタッチ可能なポリシーを詳細に設定することも可能ですが、そのポリシーを管理、メンテナンスするのは簡単ではありません。
かといって、新しいIAMロールが必要になるたびに発行を依頼したら、管理者としても毎回対応コストがかかってしまう上に、開発者の開発スピードも落ちてしまいます。このような問題を解決する機能がPermissions Boundaryです。
AWSには、道の外に飛び出してしまわないための“ガードレール”を設置することで開発者の自由を損なわずに統制するといった考え方がありますが、Permissions Boundaryを利用することで、このガードレールを設置できます。
Permissions Boundaryの仕組み
IAMユーザーやIAMロール(IAMエンティティ)に付与する通常のIAMポリシー(Permissions Policy)に加えてPermissions Boundaryを設定することで、対象のIAMエンティティが利用可能な範囲を制限することができます。
Permissions Boundaryが付与されたIAMエンティティができるのは、図1のように「IAMポリシー(Permissions Policy)で権限が付与されている」かつ「Permission Boundaryで利用可能な範囲として定義されている権限」になります。
利用手順
それでは、Permissions Boundaryを利用する手順を見てみましょう。今回は以下の手順で作業します。
- IAMユーザーを発行
- Permissions Boundaryポリシーを適用
- IAMユーザーで権限が制限されていることを確認
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- クラウド全面移行目前、DeNAが324のセキュリティ監査項目を8割減できた理由
DeNAは各種サービスのインフラ基盤のクラウド移行を進めており、クラウドセキュリティの対策が重要になってきていた。オンプレミス時代から実施している社内のセキュリティ監査の取り組みを、クラウドに適用した方法と、そこで見えてきた課題などが明かされた。 - AWSのロードバランサー「ALB Ingress Controller」で公開アプリのルーティング
本連載では、AWSが提供するマネージドKubernetesサービスの「EKS」を用いてアプリを公開する方法を紹介している。第4回は、ロードバランサー「ALB Ingress Controller」について。 - クラウドセキュリティの強化には、IAMとCASBの組み合わせが必要
アイデンティティー管理は今後の企業におけるクラウドセキュリティの要といえる。だが、カバーできない部分もある。これを補完するために検討したいのが、クラウドアクセスセキュリティブローカーの活用だ。