Elastic Beanstalk 서비스 역할 관리 - AWS Elastic Beanstalk

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Elastic Beanstalk 서비스 역할 관리

환경을 관리하고 모니터링하려면 사용자 대신 환경 리소스에 대한 작업을 AWS Elastic Beanstalk 수행합니다. Elastic Beanstalk는 이러한 작업을 수행하기 위해 특정 권한이 필요하며 AWS Identity and Access Management , 이러한 권한을 얻기 위해 (IAM) 서비스 역할을 맡습니다.

Elastic Beanstalk가 서비스 역할을 수행할 때마다 임시 보안 인증 증명을 사용해야 합니다. 이 보안 인증을 받기 위해 Elastic Beanstalk는 리전별 엔드포인트의 AWS Security Token Service (AWS STS)에 요청을 전송합니다. 자세한 내용은 IAM 사용 설명서임시 보안 자격 증명을 참조하세요.

참고

사용자 환경이 위치한 지역의 AWS STS 엔드포인트가 비활성화되면 Elastic Beanstalk는 비활성화할 수 없는 대체 엔드포인트로 요청을 보냅니다. 해당 엔드포인트는 다른 리전과 연결되어 있습니다. 따라서 교차 리전 요청을 형성합니다. 자세한 내용은 IAM 사용 설명서의 AWS STS 지역에서의 활성화 및 비활성화를 참조하십시오. AWS

Elastic Beanstalk 콘솔 및 EB CLI를 통한 서비스 역할 관리

Elastic Beanstalk 콘솔 및 EB CLI를 통해 충분한 권한을 가진 환경 서비스 역할을 설정할 수 있습니다. 기본 서비스 역할을 생성하고 이 역할의 관리형 정책을 적용합니다.

관리형 서비스 역할 정책

Elastic Beanstalk는 개선 상태 모니터링을 위한 관리형 정책과 관리형 플랫폼 업데이트에 필요하며 추가 권한을 보유한 또 다른 관리형 정책을 제공합니다. 콘솔 및 EB CLI는 사용자를 대신하여 생성한 기본 서비스 역할에 이 두 정책을 모두 할당합니다. 이러한 정책은 이 기본 서비스 역할에만 사용해야 합니다. 계정의 다른 사용자와 또는 역할과 함께 사용해서는 안 됩니다.

이 정책은 Elastic Beanstalk에 인스턴스 및 환경 상태를 모니터링할 권한을 부여합니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "elasticloadbalancing:DescribeInstanceHealth", "elasticloadbalancing:DescribeLoadBalancers", "elasticloadbalancing:DescribeTargetHealth", "ec2:DescribeInstances", "ec2:DescribeInstanceStatus", "ec2:GetConsoleOutput", "ec2:AssociateAddress", "ec2:DescribeAddresses", "ec2:DescribeSecurityGroups", "sqs:GetQueueAttributes", "sqs:GetQueueUrl", "autoscaling:DescribeAutoScalingGroups", "autoscaling:DescribeAutoScalingInstances", "autoscaling:DescribeScalingActivities", "autoscaling:DescribeNotificationConfigurations", "sns:Publish" ], "Resource": [ "*" ] } ] }

이 정책은 Elastic Beanstalk에 관리형 플랫폼 업데이트를 수행하도록 사용자를 대신해 환경을 업데이트할 권한을 부여합니다.

서비스 수준 사용 권한 그룹화

이 정책은 제공된 권한에 따라 명령문으로 그룹화됩니다.

  • ElasticBeanstalkPermissions – 이 권한 그룹은 Elastic Beanstalk 서비스 작업(Elastic Beanstalk API)을 호출하는 데 사용됩니다.

  • AllowPassRoleToElasticBeanstalkAndDownstreamServices – 이 권한 그룹을 사용하면 Elastic Beanstalk 및 AWS CloudFormation같은 다른 다운스트림 서비스로 역할을 전달할 수 있습니다.

  • ReadOnlyPermissions – 이 권한 그룹은 실행 중인 환경 정보를 수집하는 데 사용됩니다.

  • *OperationPermissions – 이 이름 지정 패턴을 사용하는 그룹은 플랫폼 업데이트를 수행하기 위해 필요한 작업을 호출하는 데 사용됩니다.

  • *BroadOperationPermissions – 이 이름 지정 패턴을 사용하는 그룹은 플랫폼 업데이트를 수행하기 위해 필요한 작업을 호출하는 데 사용됩니다. 또한, 레거시 환경을 지원하기 위한 광범위한 권한도 포함합니다.

  • *TagResource— 이 이름 지정 패턴을 사용하는 그룹은 tag-on-create API를 사용하여 Elastic Beanstalk 환경에서 생성되는 리소스에 태그를 첨부하는 호출을 위한 것입니다.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "ElasticBeanstalkPermissions", "Effect": "Allow", "Action": [ "elasticbeanstalk:*" ], "Resource": "*" }, { "Sid": "AllowPassRoleToElasticBeanstalkAndDownstreamServices", "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::*:role/*", "Condition": { "StringEquals": { "iam:PassedToService": [ "elasticbeanstalk.amazonaws.com", "ec2.amazonaws.com", "ec2.amazonaws.com.cn", "autoscaling.amazonaws.com", "elasticloadbalancing.amazonaws.com", "ecs.amazonaws.com", "cloudformation.amazonaws.com" ] } } }, { "Sid": "ReadOnlyPermissions", "Effect": "Allow", "Action": [ "autoscaling:DescribeAccountLimits", "autoscaling:DescribeAutoScalingGroups", "autoscaling:DescribeAutoScalingInstances", "autoscaling:DescribeLaunchConfigurations", "autoscaling:DescribeLoadBalancers", "autoscaling:DescribeNotificationConfigurations", "autoscaling:DescribeScalingActivities", "autoscaling:DescribeScheduledActions", "ec2:DescribeAccountAttributes", "ec2:DescribeAddresses", "ec2:DescribeAvailabilityZones", "ec2:DescribeImages", "ec2:DescribeInstanceAttribute", "ec2:DescribeInstances", "ec2:DescribeKeyPairs", "ec2:DescribeLaunchTemplates", "ec2:DescribeLaunchTemplateVersions", "ec2:DescribeSecurityGroups", "ec2:DescribeSnapshots", "ec2:DescribeSpotInstanceRequests", "ec2:DescribeSubnets", "ec2:DescribeVpcClassicLink", "ec2:DescribeVpcs", "elasticloadbalancing:DescribeInstanceHealth", "elasticloadbalancing:DescribeLoadBalancers", "elasticloadbalancing:DescribeTargetGroups", "elasticloadbalancing:DescribeTargetHealth", "logs:DescribeLogGroups", "rds:DescribeDBEngineVersions", "rds:DescribeDBInstances", "rds:DescribeOrderableDBInstanceOptions", "sns:ListSubscriptionsByTopic" ], "Resource": [ "*" ] }, { "Sid": "EC2BroadOperationPermissions", "Effect": "Allow", "Action": [ "ec2:AllocateAddress", "ec2:AssociateAddress", "ec2:AuthorizeSecurityGroupEgress", "ec2:AuthorizeSecurityGroupIngress", "ec2:CreateLaunchTemplate", "ec2:CreateLaunchTemplateVersion", "ec2:CreateSecurityGroup", "ec2:DeleteLaunchTemplate", "ec2:DeleteLaunchTemplateVersions", "ec2:DeleteSecurityGroup", "ec2:DisassociateAddress", "ec2:ReleaseAddress", "ec2:RevokeSecurityGroupEgress", "ec2:RevokeSecurityGroupIngress" ], "Resource": "*" }, { "Sid": "EC2RunInstancesOperationPermissions", "Effect": "Allow", "Action": "ec2:RunInstances", "Resource": "*", "Condition": { "ArnLike": { "ec2:LaunchTemplate": "arn:aws:ec2:*:*:launch-template/*" } } }, { "Sid": "EC2TerminateInstancesOperationPermissions", "Effect": "Allow", "Action": [ "ec2:TerminateInstances" ], "Resource": "arn:aws:ec2:*:*:instance/*", "Condition": { "StringLike": { "ec2:ResourceTag/aws:cloudformation:stack-id": [ "arn:aws:cloudformation:*:*:stack/awseb-e-*", "arn:aws:cloudformation:*:*:stack/eb-*" ] } } }, { "Sid": "ECSBroadOperationPermissions", "Effect": "Allow", "Action": [ "ecs:CreateCluster", "ecs:DescribeClusters", "ecs:RegisterTaskDefinition" ], "Resource": "*" }, { "Sid": "ECSDeleteClusterOperationPermissions", "Effect": "Allow", "Action": "ecs:DeleteCluster", "Resource": "arn:aws:ecs:*:*:cluster/awseb-*" }, { "Sid": "ASGOperationPermissions", "Effect": "Allow", "Action": [ "autoscaling:AttachInstances", "autoscaling:CreateAutoScalingGroup", "autoscaling:CreateLaunchConfiguration", "autoscaling:CreateOrUpdateTags", "autoscaling:DeleteLaunchConfiguration", "autoscaling:DeleteAutoScalingGroup", "autoscaling:DeleteScheduledAction", "autoscaling:DetachInstances", "autoscaling:DeletePolicy", "autoscaling:PutScalingPolicy", "autoscaling:PutScheduledUpdateGroupAction", "autoscaling:PutNotificationConfiguration", "autoscaling:ResumeProcesses", "autoscaling:SetDesiredCapacity", "autoscaling:SuspendProcesses", "autoscaling:TerminateInstanceInAutoScalingGroup", "autoscaling:UpdateAutoScalingGroup" ], "Resource": [ "arn:aws:autoscaling:*:*:launchConfiguration:*:launchConfigurationName/awseb-e-*", "arn:aws:autoscaling:*:*:launchConfiguration:*:launchConfigurationName/eb-*", "arn:aws:autoscaling:*:*:autoScalingGroup:*:autoScalingGroupName/awseb-e-*", "arn:aws:autoscaling:*:*:autoScalingGroup:*:autoScalingGroupName/eb-*" ] }, { "Sid": "CFNOperationPermissions", "Effect": "Allow", "Action": [ "cloudformation:*" ], "Resource": [ "arn:aws:cloudformation:*:*:stack/awseb-*", "arn:aws:cloudformation:*:*:stack/eb-*" ] }, { "Sid": "ELBOperationPermissions", "Effect": "Allow", "Action": [ "elasticloadbalancing:AddTags", "elasticloadbalancing:ApplySecurityGroupsToLoadBalancer", "elasticloadbalancing:ConfigureHealthCheck", "elasticloadbalancing:CreateLoadBalancer", "elasticloadbalancing:DeleteLoadBalancer", "elasticloadbalancing:DeregisterInstancesFromLoadBalancer", "elasticloadbalancing:DeregisterTargets", "elasticloadbalancing:RegisterInstancesWithLoadBalancer", "elasticloadbalancing:RegisterTargets" ], "Resource": [ "arn:aws:elasticloadbalancing:*:*:targetgroup/awseb-*", "arn:aws:elasticloadbalancing:*:*:targetgroup/eb-*", "arn:aws:elasticloadbalancing:*:*:loadbalancer/awseb-*", "arn:aws:elasticloadbalancing:*:*:loadbalancer/eb-*", "arn:aws:elasticloadbalancing:*:*:loadbalancer/*/awseb-*/*", "arn:aws:elasticloadbalancing:*:*:loadbalancer/*/eb-*/*" ] }, { "Sid": "CWLogsOperationPermissions", "Effect": "Allow", "Action": [ "logs:CreateLogGroup", "logs:DeleteLogGroup", "logs:PutRetentionPolicy" ], "Resource": "arn:aws:logs:*:*:log-group:/aws/elasticbeanstalk/*" }, { "Sid": "S3ObjectOperationPermissions", "Effect": "Allow", "Action": [ "s3:DeleteObject", "s3:GetObject", "s3:GetObjectAcl", "s3:GetObjectVersion", "s3:GetObjectVersionAcl", "s3:PutObject", "s3:PutObjectAcl", "s3:PutObjectVersionAcl" ], "Resource": "arn:aws:s3:::elasticbeanstalk-*/*" }, { "Sid": "S3BucketOperationPermissions", "Effect": "Allow", "Action": [ "s3:GetBucketLocation", "s3:GetBucketPolicy", "s3:ListBucket", "s3:PutBucketPolicy" ], "Resource": "arn:aws:s3:::elasticbeanstalk-*" }, { "Sid": "SNSOperationPermissions", "Effect": "Allow", "Action": [ "sns:CreateTopic", "sns:GetTopicAttributes", "sns:SetTopicAttributes", "sns:Subscribe" ], "Resource": "arn:aws:sns:*:*:ElasticBeanstalkNotifications-*" }, { "Sid": "SQSOperationPermissions", "Effect": "Allow", "Action": [ "sqs:GetQueueAttributes", "sqs:GetQueueUrl" ], "Resource": [ "arn:aws:sqs:*:*:awseb-e-*", "arn:aws:sqs:*:*:eb-*" ] }, { "Sid": "CWPutMetricAlarmOperationPermissions", "Effect": "Allow", "Action": [ "cloudwatch:PutMetricAlarm" ], "Resource": [ "arn:aws:cloudwatch:*:*:alarm:awseb-*", "arn:aws:cloudwatch:*:*:alarm:eb-*" ] }, { "Sid": "AllowECSTagResource", "Effect": "Allow", "Action": [ "ecs:TagResource" ], "Resource": "*", "Condition": { "StringEquals": { "ecs:CreateAction": [ "CreateCluster", "RegisterTaskDefinition" ] } } } ] }

관리형 정책의 내용을 보려면 IAM 콘솔에서 정책 페이지를 확인할 수도 있습니다.

중요

Elastic Beanstalk 관리형 정책은 세부 권한을 부여하지 않으며, Elastic Beanstalk 애플리케이션 작업에 잠재적으로 필요할 수 있는 모든 권한을 부여합니다. 경우에 따라 관리형 정책의 권한을 추가로 제한해야 할 수도 있습니다. 한 가지 사용 사례의 예는 을 참조하십시오환경 간 Amazon S3 버킷 액세스 방지.

관리형 정책은 사용자가 솔루션에 추가하여 Elastic Beanstalk가 관리하지 않는 사용자 지정 리소스에 대한 권한도 다루지 않습니다. 사용 권한, 최소 필수 권한 또는 사용자 지정 리소스 권한을 세부적으로 설정하려면 사용자 지정 정책을 사용합니다.

사용되지 않는 관리형 정책

과거에는 Elastic Beanstalk가 관리형 서비스 역할 정책을 AWSElasticBeanstalkService지원했습니다. 이 정책은 로 대체되었습니다. AWSElasticBeanstalkManagedUpdatesCustomerRolePolicy IAM 콘솔에서 이전 정책을 계속하여 확인하거나 사용할 수 있습니다.

관리형 정책 콘텐츠를 보려면 AWS 관리형 정책 참조 가이드의 내용을 참조하십시오 AWSElasticBeanstalkService.

하지만 새 관리형 정책 (AWSElasticBeanstalkManagedUpdatesCustomerRolePolicy) 을 사용하도록 전환하는 것이 좋습니다. 사용자 지정 리소스가 있는 경우 해당 리소스에 권한을 부여한 사용자가 지정 정책을 추가합니다.

Elastic Beanstalk 콘솔 사용

Elastic Beanstalk 콘솔에서 환경을 시작하면 콘솔이 aws-elasticbeanstalk-service-role이라는 기본 서비스 역할을 생성하며, 이 서비스 역할에 기본 권한이 있는 관리형 정책을 연결합니다.

서비스 역할은 Elastic Beanstalk가 aws-elasticbeanstalk-service-role 역할을 수행할 수 있도록 Elastic Beanstalk를 신뢰 관계 정책의 신뢰할 수 있는 엔터티로 지정합니다.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": "elasticbeanstalk.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "sts:ExternalId": "elasticbeanstalk" } } } ] }

환경에 관리형 플랫폼 업데이트를 활성화하면 Elastic Beanstalk는 관리형 업데이트를 수행하기 위해 별도의 관리형 업데이트 서비스 역할을 수임합니다. 기본적으로 Elastic Beanstalk 콘솔은 동일하게 생성된 서비스 역할인 aws-elasticbeanstalk-service-role을 관리형 업데이트 서비스 역할으로 사용합니다. 기본 서비스 역할을 변경하면 콘솔은 관리형 업데이트 서비스 역할을 설정하여 관리형 업데이트 서비스 연결 역할인 AWSServiceRoleForElasticBeanstalkManagedUpdates를 사용합니다. 서비스 연결 역할에 대한 자세한 내용은 서비스 링크 역할 사용을 참조하세요.

참고

Elastic Beanstalk 서비스는 권한 문제로 인해 이러한 서비스로의 자동 연결 및 생성을 실패할 수도 있습니다. 이로 인해 콘솔은 이러한 역할을 명시적으로 생성하려고 시도합니다. 계정에 해당 서비스 연결 역할이 있는지 확인하려면 콘솔을 사용하여 한 번 이상 환경을 생성하고, 또한 환경을 생성하기 전 관리형 업데이트가 활성화되도록 구성합니다.

EB CLI 사용

Elastic Beanstalk 명령줄 인터페이스(EB CLI)의 eb create 명령을 통해 환경을 시작할 때 --service-role 옵션으로 서비스 역할을 지정하지 않을 경우 Elastic Beanstalk는 기본 서비스 역할(aws-elasticbeanstalk-service-role)을 생성합니다. 기본 서비스 역할이 이미 존재하는 경우 Elastic Beanstalk에서는 새 환경에 기본 서비스 역할을 사용합니다. 이러한 상황에서 Elastic Beanstalk 콘솔 또한 유사한 작업을 수행합니다.

콘솔과 달리, EB CLI 명령 옵션을 사용하는 경우 관리형 업데이트 서비스 역할을 지정할 수는 없습니다. 환경 관리형 업데이트를 활성화하는 경우 구성 옵션으로 관리형 업데이트 서비스 역할을 설정합니다. 다음 예제는 관리형 업데이트를 활성화하고 기본 서비스 역할을 관리형 업데이트 서비스 역할로 사용합니다.

예 .ebextensions/ .config managed-platform-update
option_settings: aws:elasticbeanstalk:managedactions: ManagedActionsEnabled: true PreferredStartTime: "Tue:09:00" ServiceRoleForManagedUpdates: "aws-elasticbeanstalk-service-role" aws:elasticbeanstalk:managedactions:platformupdate: UpdateLevel: patch InstanceRefreshEnabled: true

Elastic Beanstalk API를 사용한 서비스 역할 관리

Elastic Beanstalk API의 CreateEnvironment 작업으로 환경을 생성하는 경우 aws:elasticbeanstalk:environment 네임스페이스의 ServiceRole 구성 옵션을 통해 서비스 역할을 지정합니다. Elastic Beanstalk API의 개선 상태 모니터링 사용법에 대한 자세한 내용은 Elastic Beanstalk API로 확장 상태 보고 사용을 참조하세요.

또한 환경에 관리형 플랫폼 업데이트를 활성화하는 경우 aws:elasticbeanstalk:managedactions 네임스페이스의 ServiceRoleForManagedUpdates 옵션을 통해 관리형 업데이트 서비스 역할을 지정할 수 있습니다.

서비스 링크 역할 사용

서비스 연결 역할은 서비스가 사용자를 대신하여 다른 서비스를 호출하는 데 필요한 모든 권한을 포함하도록 Elastic Beanstalk에서 미리 정의한 고유한 유형의 서비스 역할입니다. AWS 서비스 연결 역할은 계정에 연결됩니다. Elastic Beanstalk는 이 역할을 일 회 생성한 후, 추가 환경을 생성할 때 재사용합니다. Elastic Beanstalk 환경에서의 서비스 연결 역할 사용법에 대한 자세한 내용은 Elastic Beanstalk에 서비스 연결 역할 사용을 참조하세요.

Elastic Beanstalk API으로 환경을 생성하고 서비스 역할을 지정하지 않은 경우, Elastic Beanstalk는 계정에 대한 모니터링 서비스 연결 역할(아직 없는 경우)을 생성합니다. Elastic Beanstalk는 새 환경에 이 역할을 사용합니다. 또한, IAM을 사용하여 계정으로의 모니터링 서비스 연결 역할을 사전 생성할 수도 있습니다. 계정에 이 역할이 있으면 이 역할을 통해 Elastic Beanstalk API, Elastic Beanstalk 콘솔 또는 EB CLI를 사용하여 환경을 생성할 수 있습니다.

환경에 대한 관리형 플랫폼 업데이트를 활성화하고 aws:elasticbeanstalk:managedactions 네임스페이스의 ServiceRoleForManagedUpdates 옵션 값으로 AWSServiceRoleForElasticBeanstalkManagedUpdates을 지정하는 경우 Elastic Beanstalk는 계정의 관리형 업데이트 서비스 연결 역할(아직 없는 경우)을 생성합니다. Elastic Beanstalk는 이 역할을 통해 새 환경의 관리형 업데이트를 수행합니다.

참고

환경 생성 과정 중 Elastic Beanstalk가 계정에 모니터링 및 관리형 업데이트 서비스 역할을 생성하려고 할 때 사용자는 iam:CreateServiceLinkedRole 권한이 있어야 합니다. 이 권한이 없으면 환경을 생성하지 못하며 이 문제를 설명하는 메시지가 표시됩니다.

또는 서비스 연결 역할을 생성할 수 있는 권한을 가진 다른 사용자가 IAM을 통해 서비스 연결 역할을 사전에 생성할 수 있습니다. 이 방법을 사용할 경우 환경 생성의 iam:CreateServiceLinkedRole 권한이 필요하지 않습니다.

기본 서비스 역할 권한 확인

기본 서비스 역할이 부여하는 권한은 생성 시점, 환경을 마지막으로 시작한 시간 및 사용한 클라이언트에 따라 다를 수 있습니다. IAM 콘솔에서 기본 서비스 역할이 부여하는 권한을 확인할 수 있습니다.

기본 서비스 역할의 권한을 확인하려면
  1. IAM 콘솔에서 역할 페이지를 엽니다.

  2. aws-elasticbeanstalk-service-role선택하세요.

  3. 권한 탭에서 역할에 연결된 정책 목록을 검토합니다.

  4. 정책이 부여하는 권한을 보려면 해당 정책을 선택합니다.

out-of-date 기본 서비스 역할 업데이트

기본 서비스 역할에 필요한 권한이 없는 경우 Elastic Beanstalk 환경 관리 콘솔에서 새 환경을 생성하여 이를 업데이트할 수 있습니다.

또는 수동으로 기본 서비스 역할에 관리형 정책을 추가할 수도 있습니다.

기본 서비스 역할에 관리형 정책을 추가하려면
  1. IAM 콘솔에서 역할 페이지를 엽니다.

  2. 선택합니다 aws-elasticbeanstalk-service-role.

  3. 권한 탭에서 정책 연결을 선택합니다.

  4. AWSElasticBeanstalk를 입력하여 정책을 필터링합니다.

  5. 다음 정책을 선택한 후 정책 연결을 선택합니다.

    • AWSElasticBeanstalkEnhancedHealth

    • AWSElasticBeanstalkManagedUpdatesCustomerRolePolicy

기본 서비스 역할에 권한 추가

권한이 기본 서비스 역할에 포함되지 않은 AWS 리소스를 참조하는 구성 파일이 애플리케이션에 포함되어 있는 경우 Elastic Beanstalk에는 추가 권한이 필요할 수 있습니다. 이러한 추가 권한은 관리형 업데이트를 수행하는 동안 구성 파일을 처리하고 그러한 참조를 해결하는 데 필요합니다. 권한이 없는 경우 업데이트를 할 수 없으며 Elastic Beanstalk는 필요한 권한을 나타내는 메시지를 반환합니다. 다음 단계에 따라 IAM 콘솔에서 기본 서비스 역할에 추가 서비스에 대한 권한을 추가합니다.

기본 서비스 역할에 정책을 추가하려면
  1. IAM 콘솔에서 역할 페이지를 엽니다.

  2. 선택하세요. aws-elasticbeanstalk-service-role

  3. 권한 탭에서 정책 연결을 선택합니다.

  4. 애플리케이션이 사용하는 추가 서비스의 관리형 정책을 선택합니다. 예: AmazonAPIGatewayAdministrator또는 AmazonElasticFileSystemFullAccess.

  5. 정책 연결(Attach policies)을 선택합니다.

서비스 역할 생성

기본 서비스 역할을 사용할 수 없는 경우 서비스 역할을 생성합니다.

서비스 역할을 생성하려면
  1. IAM 콘솔에서 역할 페이지를 엽니다.

  2. 역할 생성을 선택합니다.

  3. AWS 서비스에서 AWS Elastic Beanstalk을(를) 선택한 후 사용 사례를 선택합니다.

  4. Next: Permissions(다음: 권한)를 선택합니다.

  5. AWSElasticBeanstalkManagedUpdatesCustomerRolePolicyAWSElasticBeanstalkEnhancedHealth 관리형 정책과 애플리케이션에 필요한 권한을 제공하는 모든 추가 정책을 연결합니다.

  6. 다음: 태그를 선택합니다.

  7. (선택 사항) 태그를 역할에 추가합니다.

  8. 다음: 검토를 선택합니다.

  9. 역할 이름을 입력합니다.

  10. 역할 생성을 선택합니다.

환경 생성 마법사 또는 eb create 명령의 --service-role 옵션을 설정하여 환경을 생성할 때 사용자 지정 서비스 역할을 적용합니다.