スケーリングプランの ID に基づいたポリシーの例 - AWS Auto Scaling

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

スケーリングプランの ID に基づいたポリシーの例

デフォルトで、まったく新しい IAM ユーザーには、何かを実行する許可は一切ありません。IAM 管理者は、IAM アイデンティティ (ユーザーやロールなど) にスケーリングプランを操作するアクセス許可を付与する IAM ポリシーを作成して割り当てる必要があります。

これらの JSON ポリシードキュメント例を使用して IAM ポリシーを作成する方法については、IAM ユーザーガイドの「JSON タブでのポリシーの作成」を参照してください。

ポリシーのベストプラクティス

ID ベースのポリシーは、ユーザーのアカウントで誰かが AWS Auto Scaling リソースを作成、アクセス、または削除できるどうかを決定します。これらのアクションを実行すると、 AWS アカウントに料金が発生する可能性があります。アイデンティティベースポリシーを作成したり編集したりする際には、以下のガイドラインと推奨事項に従ってください:

  • AWS 管理ポリシーを開始し、最小特権のアクセス許可に移行する – ユーザーとワークロードにアクセス許可を付与するには、多くの一般的なユースケースにアクセス許可を付与する AWS 管理ポリシーを使用します。これらは で使用できます AWS アカウント。ユースケースに固有の AWS カスタマー管理ポリシーを定義して、アクセス許可をさらに減らすことをお勧めします。詳細については、IAM ユーザーガイドの「AWS マネージドポリシー」または「AWS ジョブ機能の管理ポリシー」を参照してください。

  • 最小特権を適用する – IAM ポリシーで権限を設定するときは、タスクの実行に必要な権限のみを付与します。これを行うには、特定の条件下で特定のリソースに対して実行できるアクションを定義します。これは、最小特権権限とも呼ばれています。IAM を使用して権限を適用する方法の詳細については、『IAM ユーザーガイド』の「IAM でのポリシーと権限」を参照してください。

  • IAM ポリシーで条件を使用してアクセスをさらに制限する - ポリシーに条件を追加して、アクションやリソースへのアクセスを制限できます。例えば、ポリシー条件を記述して、すべてのリクエストを SSL を使用して送信するように指定できます。条件を使用して、 などの特定の を介してサービスアクションが使用される場合に AWS のサービス、サービスアクションへのアクセスを許可することもできます AWS CloudFormation。詳細については、IAM ユーザーガイドの [IAM JSON policy elements: Condition] (IAM JSON ポリシー要素:条件) を参照してください。

  • IAM Access Analyzer を使用して IAM ポリシーを検証し、安全で機能的な権限を確保する - IAM Access Analyzer は、新規および既存のポリシーを検証して、ポリシーが IAM ポリシー言語 (JSON) および IAM のベストプラクティスに準拠するようにします。IAM アクセスアナライザーは 100 を超えるポリシーチェックと実用的な推奨事項を提供し、安全で機能的なポリシーの作成をサポートします。詳細については、「IAM ユーザーガイド」の「IAM Access Analyzer ポリシーの検証」を参照してください。

  • 多要素認証 (MFA) を要求する – で IAM ユーザーまたはルートユーザーを必要とするシナリオがある場合は AWS アカウント、セキュリティを強化するために MFA を有効にします。API オペレーションが呼び出されるときに MFA を必須にするには、ポリシーに MFA 条件を追加します。詳細については、「IAM ユーザーガイド」の「MFA 保護 API アクセスの設定」を参照してください。

IAM でのベストプラクティスの詳細については、『IAM ユーザーガイド』の「IAM でのセキュリティのベストプラクティス」を参照してください。

スケーリングプランの作成をユーザーに許可する

次に、スケーリングプランを作成するアクセス許可を付与するアイデンティティベースのポリシーの例を示します。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "autoscaling-plans:*", "cloudwatch:PutMetricAlarm", "cloudwatch:DeleteAlarms", "cloudwatch:DescribeAlarms", "cloudformation:ListStackResources" ], "Resource": "*" } ] }

スケーリングプランを使用するには、アカウントで特定のリソースを使用できる追加の許可がエンドユーザーに付与されている必要があります。これらのアクセス許可については、「追加で必要な許可」を参照してください。

各コンソールユーザーには、アカウント内のスケーラブルなリソースを検出し、 AWS Auto Scaling コンソールから CloudWatch メトリクスデータのグラフを表示するためのアクセス許可も必要です。 AWS Auto Scaling コンソールを操作するために必要な追加のアクセス許可のセットを以下に示します。

  • cloudformation:ListStacks:スタックのリストを取得します。

  • tag:GetTagKeys:特定のタグキーを含むスケーラブルなリソースを検索します。

  • tag:GetTagValues:特定のタグ値を含むリソースを検索します。

  • autoscaling:DescribeTags:特定のタグを含む Auto Scaling グループを検索する。

  • cloudwatch:GetMetricData: メトリクスグラフでデータを表示する。

予測スケーリングの有効化をユーザーに許可する

次に、予測スケーリングを有効化するアクセス許可を付与するアイデンティティベースのポリシーの例を示します。これらの許可は、Auto Scaling グループのスケーリングのために設定されたスケーリングプランの機能を拡張します。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "cloudwatch:GetMetricData", "autoscaling:DescribeAutoScalingGroups", "autoscaling:DescribeScheduledActions", "autoscaling:BatchPutScheduledUpdateGroupAction", "autoscaling:BatchDeleteScheduledAction" ], "Resource": "*" } ] }

追加で必要な許可

スケーリングプランを正常に設定するには、エンドユーザーがスケーリングを設定する各対象サービスへのアクセス許可をエンドユーザーに付与する必要があります。対象サービスの操作に必要な最小のアクセス許可を付与するには、このセクションの情報を読み、IAM ポリシーステートメントの Action 要素に関連するアクションを指定してください。

「Auto Scaling グループ」

Auto Scaling グループをスケーリングプランに追加するには、ユーザーに Amazon EC2 Auto Scaling から次の許可が必要です。

  • autoscaling:UpdateAutoScalingGroup

  • autoscaling:DescribeAutoScalingGroups

  • autoscaling:PutScalingPolicy

  • autoscaling:DescribePolicies

  • autoscaling:DeletePolicy

ECS サービス

スケーリングプランに ECS サービスを追加するには、ユーザーに Amazon ECS と Application Auto Scaling から次の許可が必要です。

  • ecs:DescribeServices

  • ecs:UpdateService

  • application-autoscaling:RegisterScalableTarget

  • application-autoscaling:DescribeScalableTargets

  • application-autoscaling:DeregisterScalableTarget

  • application-autoscaling:PutScalingPolicy

  • application-autoscaling:DescribeScalingPolicies

  • application-autoscaling:DeleteScalingPolicy

スポットフリート

スケーリングプランにスポットフリートを追加するには、ユーザーに Amazon EC2 と Application Auto Scaling から次の許可が必要です。

  • ec2:DescribeSpotFleetRequests

  • ec2:ModifySpotFleetRequest

  • application-autoscaling:RegisterScalableTarget

  • application-autoscaling:DescribeScalableTargets

  • application-autoscaling:DeregisterScalableTarget

  • application-autoscaling:PutScalingPolicy

  • application-autoscaling:DescribeScalingPolicies

  • application-autoscaling:DeleteScalingPolicy

DynamoDB テーブルまたはグローバルインデックス

スケーリングプランにDynamoDB テーブルまたはグローバルインデックスを追加するには、ユーザーに DynamoDB とApplication Auto Scaling から次の許可が必要です。

  • dynamodb:DescribeTable

  • dynamodb:UpdateTable

  • application-autoscaling:RegisterScalableTarget

  • application-autoscaling:DescribeScalableTargets

  • application-autoscaling:DeregisterScalableTarget

  • application-autoscaling:PutScalingPolicy

  • application-autoscaling:DescribeScalingPolicies

  • application-autoscaling:DeleteScalingPolicy

Aurora DB クラスター

Aurora DB クラスターをスケーリングプランに追加するには、ユーザーに Amazon Aurora と Application Auto Scaling から次の許可が必要です。

  • rds:AddTagsToResource

  • rds:CreateDBInstance

  • rds:DeleteDBInstance

  • rds:DescribeDBClusters

  • rds:DescribeDBInstances

  • application-autoscaling:RegisterScalableTarget

  • application-autoscaling:DescribeScalableTargets

  • application-autoscaling:DeregisterScalableTarget

  • application-autoscaling:PutScalingPolicy

  • application-autoscaling:DescribeScalingPolicies

  • application-autoscaling:DeleteScalingPolicy

サービスにリンクされたロールの作成に必要な許可

AWS Auto Scaling では、 のユーザーが予測スケーリングを有効にしてスケーリングプランを初めて AWS アカウント 作成するときに、サービスにリンクされたロールを作成するためのアクセス許可が必要です。サービスにリンクされたロールがまだ存在しない場合は、 によってアカウントに AWS Auto Scaling 作成されます。サービスにリンクされたロールは、ユーザーに代わって他の サービスを呼び AWS Auto Scaling 出すことができるように、 にアクセス許可を付与します。

この自動ロール作成を成功させるには、ユーザーには iam:CreateServiceLinkedRole アクションへのアクセス許可が必要です。

"Action": "iam:CreateServiceLinkedRole"

次に、サービスにリンクされたロールを作成するアクセス許可を付与するアイデンティティベースのポリシーの例を示します。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iam:CreateServiceLinkedRole", "Resource": "arn:aws:iam::*:role/aws-service-role/autoscaling-plans.amazonaws.com/AWSServiceRoleForAutoScalingPlans_EC2AutoScaling", "Condition": { "StringLike": { "iam:AWSServiceName":"autoscaling-plans.amazonaws.com" } } } ] }

詳細については、「サービスにリンクされたロールの予測スケーリング」を参照してください。