AWS PoliciesとIAM Rolesを使ってAWS環境を制限する方法
Ready to See CloudLabs in Action?
Turn your ideas into hands-on experiences. Tell us what you're looking for, and team CloudLabs will help you find the right solution.
クラウドコンピューティングは、組織がデータを保存、管理、処理する方法に革命をもたらしました。しかし、不正アクセス、データ漏洩、その他のセキュリティ脅威といったセキュリティリスクを軽減するためには、強固なセキュリティ対策を実装することが不可欠です。
AWS PoliciesとIAM Roles(Identity and Access Management)は、組織がクラウド環境を保護するために使用できる最も強力なツールの2つです。
AWS環境を制限するには、AWSにおいてさまざまな種類のPolicyを作成することでアクセスを制御し、それらをIAM IdentityまたはAWS Resourceにアタッチする必要があります。
本ブログ記事では、AWS PoliciesとIAM Rolesとは何か、そのメリット、そしてクラウドリソースへのアクセスを制限するための設定方法について詳しく解説します。
要約:
1.AWS Policiesとは?-** Policyの種類**-** AWS Policyのサンプル**
2.IAMとは?-** IAMを使用するメリット:**
3.AWS Usage Policies:-** AWS Usage Policyのサンプル:- Usage Policyの適用方法は?**
4.AWS PoliciesとIAM RolesをCloudLabs Portalに適用して環境を制限する方法は?
5.まとめ
AWS Policiesとは?
AWS Policiesとは、Entity(エンティティ)やResource(リソース)に関連付けられた際に、それらに対するPermission(権限)を定義するObject(オブジェクト)です。ユーザーなどのIAM Principalがリクエストを送信すると、AWSはこれらのPolicyを解析します。リクエストを承認するか拒否するかの判断は、Policyに記載されたPermissionに基づいて行われ、これらは一般的にAWS上にJSONファイルとして保存されます。
Policyの種類:
- Identity-Based Policies
- Resource Based Policies
AWS Policyのサンプル:
https://spektra-bucket.s3.us-west-2.amazonaws.com/AWS_EC2_Policy_NEW.json
IAMとは?
AWS Identity and Access Management(IAM)は、AWSリソースへのアクセスを安全に管理できるWebサービスです。リソースに対するAuthentication(認証、サインイン)とAuthorization(認可、Permission)を管理し、誰がそれらにアクセスできるかを決定します。
IAMを使用するメリット:
- AWSアカウントへの共有アクセス
- 詳細なPermissionの設定
- Amazon EC2上で動作するアプリケーションに対する安全なAWSリソースへのアクセス
- Identity Federation
- PCI DSS準拠
- 多くのAWSサービスとの統合
- 結果整合性(Eventually Consistent)
- 無料で利用可能
AWS Usage Policies:
Usage Policyは、以下のAWSリソースを中心に構成されています。
- EC2(Elastic compute cloud)
- RDS(Relational Database Service)
- ECS(Elastic Container Service)
例えば:
EC2の許可値を20 vCPU coresに設定したPolicyを準備したとします。ここでUser01とUser02という2人のユーザーが同じLabを実施します。User01は4 vCPU coresを使用するEC2インスタンスを作成し、User02は24 coresを使用するEC2を作成します。
この場合、両ユーザーについて2つの異なるケースが発生します。
- ケース1: 4 coresのUser01は許可値の範囲内であり、Usage Policyに違反しません。
- ケース2: 24 coresのUser02は許可値を超過しており、Usage Policyに違反する結果となります。
- Policyに違反すると、メールで通知が届きます。
- 通知メールを受け取るには、Labの設定時に個人またはチームがメールアドレスを提供します。
AWS Usage Policyのサンプル:
https://spektra-bucket.s3-us-west-2.amazonaws.com/AWS-UsagePolicy.json
アラートのサンプル:
CloudLabs PortalにUsage Policyを適用する方法は?
Usage Policyは、CloudLabs TemplateをCloudLabs Portalに追加する際に、以下の手順で適用できます。
ステップ1: ブラウザでadmin.cloudlabs.aiを開き、Loginボタンをクリックします。
ステップ2: Work or School Accountボタンをクリックしてログインします。
ステップ3: Work or School Accountボタンをクリックすると、Login Credentialsを入力し、Nextボタンをクリックして進む必要があります。
ステップ4: Passwordを入力し、フィールドにpasswordを入力した後、Sign inをクリックします。
ログインに成功すると、CloudLabs Portalのホームページにリダイレクトされます。
ステップ5: 次に、CloudLabs Templateを追加するためにTemplatesをクリックします。
ステップ6: Templateのダッシュボードに移動し、下にスクロールして、Usage Policy URLタブのオプションを入力します。作成したUsage PolicyのURLを追加する必要があります。
続いてSubmitをクリックすると、保存されます。
AWS PoliciesとIAM RolesをCloudLabs Portalに適用して環境を制限する方法は?
特定のScope(範囲)へのアクセスを許可するには、ユーザーおよびグループにRoleを割り当てる必要があります。Template Permissionを活用することで、AWSリソースへのアクセスを管理し、それらに対して実行できるActionを指定し、ユーザーおよびグループがアクセスできる領域を決定できます。
CloudLabs Templateへの権限の割り当て:
ステップ1: CloudLabs Portalで適用する前に、Policyを準備しておく必要があります。
ステップ2: https://admin.cloudlabs.ai/に移動し、Loginをクリックします。
ステップ3: プロンプトが表示されたら、サポートされているログインオプションのいずれかを選択します。
ログインオプションの詳細については、以下のドキュメントを参照してください(Access CloudLabs Admin Center | CloudLabs Documentation)
ステップ4: ログインに成功したら、Templates(1)をクリックします。Policyを設定したいTemplateを選択し、該当Templateのアクションペインにある編集ボタンをクリックします。
ステップ5: クラウドプラットフォームとしてAmazon Web Servicesを使用していることを確認してください。
ステップ6: editボタンをクリックすると、Edit Templateページが表示されます。下にスクロールしてADD TEMPLATE PERMISSIONSを探します。その後、+ADDをクリックしてPolicyを追加します。
ステップ7: +ADDボタンをクリックすると、3種類の異なるIAM Policyが表示されます。
- IAM Built-in Policy:
IAM Built-in Policyとは、AWSによって作成・管理される独立したPolicyのことで、Policy名を含む独自のAmazon Resource Name(ARN)を持ちます。これらのPolicyは自己完結型であり、AWSによって管理されます。
例えば、arn:aws:iam::aws:policy/IAMReadOnlyAccessはAWS管理のPolicyです。これらのPolicyは、さまざまな一般的なユースケースに対してPermissionを提供するように設計されています。
- IAM Custom Policy:
Custom-Managed Policyとは、AWSアカウント内で独立して管理できるPolicyのことです。これらはAWS Management Console、AWS CLI、またはIAMサービスのAWS APIを使用して作成できます。これらのPolicyは各アカウントに固有であり、IAMユーザー、グループ、またはRoleにPermissionを付与するために使用できます。
- IAM Instructor Access: ここではProfile TypeとPermissionが自動的に選択されます。
ステップ8: 要件に応じてIAM Built-in Policyを選択する場合は、Attendee、Instructor、Group MemberなどのProfile Typeを選択する必要があります。その後、割り当てたいPermissionを選択する必要があります。
Permissionには、Power User Access、System Administrator、Administrator Accessという3種類があります。
ステップ9: もう1つの選択肢として、IAM Custom Policyを選ぶ方法があります。その場合、Profile Typeを選び、Profile Dataセクションに IAM Custom PolicyのURLを入力する必要があります。具体的には、そのCustom Policyに紐づくS3 BucketのURLを入力することになります。
ステップ10: IAM Instructor Accessを選択することもできます。ここでは、Profile TypeとPermissionが自動的に選択されます。
ステップ11: Policyを適用すると、Templateのpermissionは以下のように表示されます。
まとめ:
AWS Policiesは、EC2インスタンス、S3バケット、RDSデータベースといったAWSリソースへのアクセスを制限するためのPermissionを定義するために使用され、認可されたユーザーのみがクラウドリソースにアクセスでき、そのアクセスが必要なPermissionレベルに限定されるようにします。
AWS PoliciesとIAM Rolesを組み合わせて使用することで、クラウド環境へのアクセスを効果的に制限し、クラウドリソースのセキュリティを確保することができます。
本ブログ記事では、AWS PoliciesとIAM Rolesの基本、そのメリット、そしてCloudLabs Portalでアクセスを制限するための設定方法をステップバイステップで解説しました。これらのベストプラクティスに従うことで、組織はクラウド環境を保護された状態に保つことができます。
Ready to See CloudLabs in Action?
Turn your ideas into hands-on experiences. Tell us what you're looking for, and team CloudLabs will help you find the right solution.




