メニュー
AWS Batch
ユーザーガイド

AWS Batch サービスの IAM ロール

AWS Batch は、ユーザーの代わりに他の AWS のサービスを呼び出してサービスで使用するリソースを管理します。このサービスを利用する前に、必要なアクセス権限を AWS Batch に付与するための IAM ポリシーおよびロールが必要です。

ほとんどの場合、AWS Batch サービスのロールは、コンソールの初回実行時に自動的に作成されます。アカウントに AWS Batch サービスの既存のロールがあるかどうかを確認するには、次の手順を使用できます。

AWSBatchServiceRole のポリシーを次に示します。

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "ec2:DescribeAccountAttributes", "ec2:DescribeInstances", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups", "ec2:DescribeKeyPairs", "ec2:DescribeImages", "ec2:DescribeImageAttribute", "ec2:DescribeSpotFleetInstances", "ec2:DescribeSpotFleetRequests", "ec2:DescribeSpotPriceHistory", "ec2:RequestSpotFleet", "ec2:CancelSpotFleetRequests", "ec2:ModifySpotFleetRequest", "ec2:TerminateInstances", "autoscaling:DescribeAccountLimits", "autoscaling:DescribeAutoScalingGroups", "autoscaling:DescribeLaunchConfigurations", "autoscaling:DescribeAutoScalingInstances", "autoscaling:CreateLaunchConfiguration", "autoscaling:CreateAutoScalingGroup", "autoscaling:UpdateAutoScalingGroup", "autoscaling:SetDesiredCapacity", "autoscaling:DeleteLaunchConfiguration", "autoscaling:DeleteAutoScalingGroup", "autoscaling:CreateOrUpdateTags", "autoscaling:SuspendProcesses", "autoscaling:PutNotificationConfiguration", "autoscaling:TerminateInstanceInAutoScalingGroup", "ecs:DescribeClusters", "ecs:DescribeContainerInstances", "ecs:DescribeTaskDefinitions", "ecs:DescribeTasks", "ecs:ListClusters", "ecs:ListContainerInstances", "ecs:ListTaskDefinitionFamilies", "ecs:ListTaskDefinitions", "ecs:ListTasks", "ecs:CreateCluster", "ecs:DeleteCluster", "ecs:RegisterTaskDefinition", "ecs:DeregisterTaskDefinition", "ecs:RunTask", "ecs:StartTask", "ecs:StopTask", "ecs:UpdateContainerAgent", "ecs:DeregisterContainerInstance", "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents", "logs:DescribeLogGroups", "iam:GetInstanceProfile", "iam:PassRole" ], "Resource": "*" }] }

次の手順を使用して、アカウントに AWS Batch サービスに既存のロールがあるかどうかを確認し、必要に応じてマネージド IAM ポリシーをアタッチできます。

IAM コンソールで AWSBatchServiceRole を確認するには

  1. https://console.aws.amazon.com/iam/ にある IAM コンソールを開きます。

  2. ナビゲーションペインで [Roles (ロール) ] を選択します。

  3. ロールのリストで AWSBatchServiceRole を検索します。ロールが見つからない場合、次の手順を使用してロールを作成します。ロールが存在する場合は、そのロールを選択して、アタッチされているポリシーを表示します。

  4. [Permissions] を選択します。

  5. [AWSBatchServiceRole] 管理ポリシーがロールにアタッチされていることを確認します。ポリシーがアタッチされている場合、AWS Batch サービスのロールは適切に構成されています。そうでない場合、次のサブステップに従ってポリシーをアタッチします。

    1. [Attach Policy] を選択します。

    2. [Filter] で、AWSBatchServiceRole と入力し、アタッチする利用可能なポリシーの一覧を絞り込みます。

    3. [AWSBatchServiceRole] ポリシーを選択し、[ポリシーのアタッチ] を選択します。

  6. [信頼関係]、[信頼関係の編集] を選択します。

  7. 信頼関係に以下のポリシーが含まれていることを確認します。信頼関係が以下のポリシーと一致する場合、[Cancel] を選択します。信頼関係が一致しない場合、ポリシーを [Policy Document] ウィンドウにコピーし、[Update Trust Policy] を選択します。

    { "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Principal": {"Service": "batch.amazonaws.com"}, "Action": "sts:AssumeRole" }] }

AWSBatchServiceRole IAM ロールを作成するには

  1. https://console.aws.amazon.com/iam/ にある IAM コンソールを開きます。

  2. ナビゲーションペインで [Roles]、[Create New Role] の順に選択します。

  3. [信頼されたエンティティの種類を選択] ページの [AWS のサービス] で [バッチ]、[次の手順: アクセス権限] の順に選択します。

  4. [次の手順: 確認] を選択します。

  5. [ロール名] に「AWSBatchServiceRole」と入力し、次に [ルールの作成] を選択します。