type
status
date
slug
summary
tags
category
icon
password
理論
1. IAMポリシーの基本概念
IAMポリシーは、AWSリソースへのアクセスを制御するためのルールセットです。ポリシーは以下を基に構成されます:
- Effect: アクションを許可するか拒否する(
Allow
またはDeny
)。
- Action: 許可または拒否する操作(例:
ec2:RunInstances
)。
- Resource: 操作対象のAWSリソース(例: 特定のEC2インスタンスやIAMロール)。
- Condition: 特定の条件が満たされた場合にのみポリシーを適用。
2. EC2インスタンスタイプを制御するIAMポリシーの設計
特定のインスタンスタイプのみを許可するIAMポリシーを作成することで、意図しない高コストのインスタンスの起動を防げます。以下は、許可されたインスタンスタイプ以外の起動を拒否する例です:
ポリシー例
ポイント
- EffectがDeny
デフォルトで全ての操作が許可されているAWS環境において、明示的に拒否ルールを設定します。
- ConditionのStringNotEqualsIfExists
条件式で指定されたインスタンスタイプ(ここでは
t3.micro
とt3.small
)以外のインスタンス起動を拒否します。- 柔軟性
必要に応じてリストに新しいインスタンスタイプを追加することで、許可範囲を調整可能です。
3. 使用シナリオとメリット
シナリオ
- 開発者のテスト環境: 開発者が自由にインスタンスを起動する環境で、高コストなインスタンスの誤起動を防ぐ。
- コスト最適化: 大規模な環境でコスト管理が課題となっている場合に役立つ。
メリット
- コスト管理: 高額なインスタンスタイプの誤起動を未然に防止。
- セキュリティ: 必要以上のリソース消費を制限し、予期せぬトラフィックやアクセスを抑制。
- 運用効率の向上: 適切なリソース制限により、AWS環境の管理が容易に。
4. ポリシー適用のベストプラクティス
- 最小特権の原則
必要最小限のアクセス権を与えることで、不必要な操作を防ぎます。
- グループ単位での適用
IAMユーザーではなく、IAMグループにポリシーを適用することで管理効率を向上。
- テスト環境での検証
実際の適用前にテスト環境でポリシーが期待通りに機能することを確認。
- ポリシードキュメントのバージョン管理
ポリシーを更新した際にバージョン管理を行い、変更履歴を記録します。
5. 追加の補助ツール
AWS Config
- 目的: 環境全体のリソース設定がポリシーに準拠しているかを監視。
- 使用例: インスタンスタイプの制御が設定されていることを継続的に検証。
AWS Cost Explorer
- 目的: コスト分析を行い、非効率なリソース使用を特定。
- 使用例: ポリシー導入後のコスト削減効果を可視化。
6. 結論
IAMポリシーを使用したインスタンスタイプの制御は、AWS環境におけるコスト最適化と運用効率化の重要な手段です。適切なポリシー設計と運用を組み合わせることで、安全で効果的なAWSリソース管理を実現できます。
実践
略
一問道場
質問 #112
トピック 1
ある大規模なモバイルゲーム企業は、オンプレミスのインフラストラクチャをすべてAWSクラウドに移行することに成功しました。
ソリューションアーキテクトは、設計に従って構築されていること、またAWSのWell-Architected Frameworkに沿って稼働していることを確認するために環境をレビューしています。
コストエクスプローラーで前月のコストを確認している際、いくつかの大規模インスタンスタイプの作成とその後の終了が、コストの大部分を占めていることに気付きました。ソリューションアーキテクトは、同社の開発者がテストの一環として新しいAmazon EC2インスタンスを起動しており、適切なインスタンスタイプを使用していないことを発見しました。
ソリューションアーキテクトは、開発者が起動できるインスタンスタイプを制限するための制御メカニズムを実装する必要があります。
次のうち、要件を満たす解決策はどれですか?
A. AWS Configで許容されるインスタンスタイプを指定した
desired-instance-type
のマネージドルールを作成します。このルールを、新しいEC2インスタンスが起動されるたびに実行されるイベントに関連付けます。B. EC2コンソールで、許容されるインスタンスタイプを指定した起動テンプレートを作成します。このテンプレートを開発者のIAMアカウントに割り当てます。
C. 新しいIAMポリシーを作成します。許容されるインスタンスタイプを指定します。このポリシーを、開発者のIAMアカウントを含むIAMグループにアタッチします。
D. EC2 Image Builderを使用して、開発者向けのイメージパイプラインを作成し、ゴールデンイメージの作成を支援します。
解説
この問題では、開発者が起動できるEC2インスタンスタイプを制限するための適切な制御メカニズムを選択する必要があります。それぞれの選択肢について解説します。
A. AWS Configのマネージドルールを使用する
- 説明: AWS Configで
desired-instance-type
ルールを作成し、許可されたインスタンスタイプを定義します。このルールをイベントに関連付け、新しいEC2インスタンスが起動されるたびに実行します。
- メリット: AWS Configは環境の監視と準拠状態の確認に役立ちますが、インスタンス起動を直接制限する機能ではありません。
- デメリット: この方法は、インスタンス起動後に非準拠状態を検出する仕組みであり、事前に制限をかけることはできません。
- 評価: 不正解 - インスタンスタイプの制御メカニズムとしては不適切。
B. 起動テンプレートを作成して割り当てる
- 説明: 開発者が起動テンプレートを使用してインスタンスを起動するように設定します。このテンプレートに許可されるインスタンスタイプを事前に定義します。
- メリット: 起動テンプレートでインスタンス構成を統一できます。
- デメリット: 起動テンプレートを強制的に使用させる仕組みはありません。開発者がテンプレートを使わない場合、制御は無効になります。
- 評価: 不正解 - インスタンスタイプ制限を強制する方法としては不十分。
C. IAMポリシーを使用して制限を設定する
- 説明: IAMポリシーで許可されるインスタンスタイプを明確に指定します。このポリシーを開発者が所属するIAMグループに適用します。
- メリット: IAMポリシーは事前にインスタンス起動を制御できるため、許可されたインスタンスタイプ以外の起動ができません。
- デメリット: ポリシーの設計が正確である必要がありますが、一度設定すれば手間がかかりません。
- 評価: 正解 - IAMポリシーは開発者が起動できるインスタンスタイプを制限するための最も効果的な方法です。
D. EC2 Image Builderを使用してゴールデンイメージを作成する
- 説明: EC2 Image Builderで標準化されたゴールデンイメージを作成し、開発者に使用を促します。
- メリット: イメージの標準化に役立ちます。
- デメリット: イメージ自体はインスタンスタイプを制限しません。また、Image Builderは主にAMIの構成管理ツールであり、インスタンスの制御には向いていません。
- 評価: 不正解 - インスタンスタイプの制御メカニズムとしては適切ではありません。
正解: C. IAMポリシーを使用する
理由
- IAMポリシーを使用すれば、特定のインスタンスタイプのみを許可するルールを設定可能です。これにより、開発者が指定されたタイプ以外のインスタンスを起動することを防げます。
- 例として、以下のIAMポリシーを作成できます:
このポリシーでは、許可されたインスタンスタイプ(例:
t3.micro
とt3.small
)以外のインスタンス起動が拒否されます。- 作者:みなみ
- 链接:https://tangly1024.com/資格勉強/16dd7ae8-88e2-803e-8a3d-e0fb45b07daa
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。
相关文章