AWSElasticBeanstalkRoleCore
Last Modified
Mar 12, 2026
March 12, 2026 at 09:26 PM UTC
Version
v3
Total Versions
2
Created
Apr 30, 2024
Actions
69
Risk
MediumThe same capabilities in a scoped form, resource policy writes, reads across all data, or full access to a whole service. Read from this policy document alone: trust policies, boundaries and SCPs in your account still decide what actually succeeds. How this is assessed
- Medium
Can launch resources that run as a more privileged role
Grants the actions of 2 documented escalation paths, but only on named resources or under a condition. Review that scope before trusting it.
- iam:PassRole: condition iam:PassedToService, on arn:aws:iam::*:role/aws-elasticbeanstalk-*
- cloudformation:CreateStack: on arn:aws:cloudformation:*:*:stack/awseb-e-*
- iam:PassRole: condition iam:PassedToService, on arn:aws:iam::*:role/aws-elasticbeanstalk-*
- ec2:RunInstances: condition ec2:LaunchTemplate
Use with caution: Check which roles, users or policies fall inside the scope shown above. Within it the escalation works as documented, so keep privileged principals out of it.
- Medium
Can take over existing resources that run as another role
Grants the actions of 1 documented escalation path, but only on named resources or under a condition. Review that scope before trusting it.
- cloudformation:UpdateStack: on arn:aws:cloudformation:*:*:stack/awseb-e-*
Use with caution: Check which roles, users or policies fall inside the scope shown above. Within it the escalation works as documented, so keep privileged principals out of it.
IAM Access Analyzer (1)
- Suggestion / REDUNDANT_RESOURCE
The 2 resource ARN(s) are redundant because they reference the same resource. Review the use of wildcards (*), or remove the resource arn:aws:s3:::elasticbeanstalk-env-resources-*/* to remove the redundancy. AWS docs
Policy Document
View on GitHub{
"PolicyVersion": {
"Document": {
"Version": "2012-10-17",
"Statement": [
{
"Sid": "TerminateInstances",
"Effect": "Allow",
"Action": [
"ec2:TerminateInstances"
],
"Resource": "arn:aws:ec2:*:*:instance/*",
"Condition": {
"StringLike": {
"ec2:ResourceTag/aws:cloudformation:stack-id": "arn:aws:cloudformation:*:*:stack/awseb-e-*"
}
}
},
{
"Sid": "EC2",
"Effect": "Allow",
"Action": [
"ec2:ReleaseAddress",
"ec2:AllocateAddress",
"ec2:DisassociateAddress",
"ec2:AssociateAddress",
"ec2:CreateTags",
"ec2:DeleteTags",
"ec2:CreateSecurityGroup",
"ec2:DeleteSecurityGroup",
"ec2:AuthorizeSecurityGroup*",
"ec2:RevokeSecurityGroup*",
"ec2:CreateLaunchTemplate*",
"ec2:DeleteLaunchTemplate*"
],
"Resource": "*"
},
{
"Sid": "LTRunInstances",
"Effect": "Allow",
"Action": "ec2:RunInstances",
"Resource": "*",
"Condition": {
"ArnLike": {
"ec2:LaunchTemplate": "arn:aws:ec2:*:*:launch-template/*"
}
}
},
{
"Sid": "ASG",
"Effect": "Allow",
"Action": [
"autoscaling:AttachInstances",
"autoscaling:*LoadBalancer*",
"autoscaling:*AutoScalingGroup",
"autoscaling:*LaunchConfiguration",
"autoscaling:DeleteScheduledAction",
"autoscaling:DetachInstances",
"autoscaling:PutNotificationConfiguration",
"autoscaling:PutScalingPolicy",
"autoscaling:PutScheduledUpdateGroupAction",
"autoscaling:ResumeProcesses",
"autoscaling:SuspendProcesses",
"autoscaling:*Tags"
],
"Resource": [
"arn:aws:autoscaling:*:*:launchConfiguration:*:launchConfigurationName/awseb-e-*",
"arn:aws:autoscaling:*:*:autoScalingGroup:*:autoScalingGroupName/awseb-e-*"
]
},
{
"Sid": "ASGPolicy",
"Effect": "Allow",
"Action": [
"autoscaling:DeletePolicy"
],
"Resource": [
"*"
]
},
{
"Sid": "EBSLR",
"Effect": "Allow",
"Action": [
"iam:CreateServiceLinkedRole"
],
"Resource": [
"arn:aws:iam::*:role/aws-service-role/elasticbeanstalk.amazonaws.com/AWSServiceRoleForElasticBeanstalk*"
],
"Condition": {
"StringLike": {
"iam:AWSServiceName": "elasticbeanstalk.amazonaws.com"
}
}
},
{
"Sid": "S3Obj",
"Effect": "Allow",
"Action": [
"s3:Delete*",
"s3:Get*",
"s3:Put*"
],
"Resource": [
"arn:aws:s3:::elasticbeanstalk-*/*",
"arn:aws:s3:::elasticbeanstalk-env-resources-*/*"
]
},
{
"Sid": "S3Bucket",
"Effect": "Allow",
"Action": [
"s3:GetBucket*",
"s3:ListBucket",
"s3:PutBucketPolicy"
],
"Resource": "arn:aws:s3:::elasticbeanstalk-*"
},
{
"Sid": "CFN",
"Effect": "Allow",
"Action": [
"cloudformation:CreateStack",
"cloudformation:DeleteStack",
"cloudformation:GetTemplate",
"cloudformation:ListStackResources",
"cloudformation:UpdateStack",
"cloudformation:ContinueUpdateRollback",
"cloudformation:CancelUpdateStack",
"cloudformation:TagResource",
"cloudformation:UntagResource"
],
"Resource": "arn:aws:cloudformation:*:*:stack/awseb-e-*"
},
{
"Sid": "CloudWatch",
"Effect": "Allow",
"Action": [
"cloudwatch:PutMetricAlarm",
"cloudwatch:DeleteAlarms"
],
"Resource": "arn:aws:cloudwatch:*:*:alarm:awseb-*"
},
{
"Sid": "ELB",
"Effect": "Allow",
"Action": [
"elasticloadbalancing:Create*",
"elasticloadbalancing:Delete*",
"elasticloadbalancing:Modify*",
"elasticloadbalancing:RegisterTargets",
"elasticloadbalancing:DeRegisterTargets",
"elasticloadbalancing:DeregisterInstancesFromLoadBalancer",
"elasticloadbalancing:RegisterInstancesWithLoadBalancer",
"elasticloadbalancing:*Tags",
"elasticloadbalancing:ConfigureHealthCheck",
"elasticloadbalancing:SetRulePriorities",
"elasticloadbalancing:SetLoadBalancerPoliciesOfListener"
],
"Resource": [
"arn:aws:elasticloadbalancing:*:*:targetgroup/awseb-*",
"arn:aws:elasticloadbalancing:*:*:loadbalancer/awseb-*",
"arn:aws:elasticloadbalancing:*:*:loadbalancer/app/awseb-*/*",
"arn:aws:elasticloadbalancing:*:*:loadbalancer/net/awseb-*/*",
"arn:aws:elasticloadbalancing:*:*:listener/awseb-*",
"arn:aws:elasticloadbalancing:*:*:listener/app/awseb-*",
"arn:aws:elasticloadbalancing:*:*:listener/net/awseb-*",
"arn:aws:elasticloadbalancing:*:*:listener-rule/app/awseb-*/*/*/*"
]
},
{
"Sid": "ListAPIs",
"Effect": "Allow",
"Action": [
"autoscaling:Describe*",
"cloudformation:Describe*",
"logs:Describe*",
"ec2:Describe*",
"ecs:Describe*",
"ecs:List*",
"elasticloadbalancing:Describe*",
"rds:Describe*",
"sns:List*",
"iam:List*",
"acm:Describe*",
"acm:List*"
],
"Resource": "*"
},
{
"Sid": "AllowPassRole",
"Effect": "Allow",
"Action": "iam:PassRole",
"Resource": "arn:aws:iam::*:role/aws-elasticbeanstalk-*",
"Condition": {
"StringEquals": {
"iam:PassedToService": [
"elasticbeanstalk.amazonaws.com",
"ec2.amazonaws.com",
"autoscaling.amazonaws.com",
"elasticloadbalancing.amazonaws.com",
"ecs.amazonaws.com",
"cloudformation.amazonaws.com"
]
}
}
}
]
},
"VersionId": "v3",
"IsDefaultVersion": true,
"CreateDate": "2024-04-30T00:01:53+00:00"
}
}Version History (5 recorded)
Raw historyAWSElasticBeanstalkRoleCore - Policy Version v3
No recorded action delta - this version predates the change index. View the raw diff.
Mar 12, 2026
8f6972dUpdate detected
No recorded action delta - this version predates the change index. View the raw diff.
Sep 18, 2024
aafbae9Update detected
No recorded action delta - this version predates the change index. View the raw diff.
May 13, 2024
1b36617Update detected
No recorded action delta - this version predates the change index. View the raw diff.
Sep 9, 2020
3673f32Update detected
No recorded action delta - this version predates the change index. View the raw diff.
Jun 6, 2020
e891592