AWSBudgetsSpendLimitMemberRolePolicy
Last Modified
Aug 13, 2026
August 13, 2026 at 09:04 PM UTC
Version
v4
Total Versions
4
Created
Aug 13, 2026
Actions
97
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 read secrets
Reads Lambda environment variables, where credentials often live, on any resource with no condition.
lambda:GetFunctionConfigurationUse with caution: Where the holder needs only some secrets, write your own policy scoped to their ARNs or tags, and limit decryption in the KMS key policies.
Policy Document
View on GitHub{
"PolicyVersion": {
"Document": {
"Version": "2012-10-17",
"Statement": [
{
"Sid": "EC2Actions",
"Effect": "Allow",
"Action": [
"ec2:DescribeInstances",
"ec2:StopInstances",
"ec2:DescribeNatGateways",
"ec2:DescribeVpnGateways",
"ec2:DescribeAddresses",
"ec2:DescribeSnapshots",
"ec2:DescribeInstanceStatus",
"ec2:DescribeVolumes"
],
"Resource": "*"
},
{
"Sid": "RDSActions",
"Effect": "Allow",
"Action": [
"rds:DescribeDBInstances",
"rds:StopDBInstance",
"rds:DescribeDBClusters",
"rds:StopDBCluster",
"rds:CreateDBClusterSnapshot",
"rds:DescribeDBClusterSnapshots",
"rds:RestoreDBClusterFromSnapshot",
"rds:RestoreDBClusterToPointInTime",
"rds:DescribeIntegrations",
"rds:DescribeDBProxies"
],
"Resource": "*"
},
{
"Sid": "DSQLActions",
"Effect": "Allow",
"Action": [
"dsql:GetCluster",
"dsql:ListClusters"
],
"Resource": "*"
},
{
"Sid": "SageMakerActions",
"Effect": "Allow",
"Action": [
"sagemaker:DescribeNotebookInstance",
"sagemaker:ListNotebookInstances",
"sagemaker:StopNotebookInstance",
"sagemaker:StartNotebookInstance",
"sagemaker:DescribeApp",
"sagemaker:ListApps",
"sagemaker:DescribeTrainingJob",
"sagemaker:ListTrainingJobs",
"sagemaker:StopTrainingJob",
"sagemaker:DescribeProcessingJob",
"sagemaker:ListProcessingJobs",
"sagemaker:StopProcessingJob",
"sagemaker:DescribeTransformJob",
"sagemaker:ListTransformJobs",
"sagemaker:StopTransformJob",
"sagemaker:ListEndpoints",
"sagemaker:DescribeEndpointConfig",
"sagemaker:ListEndpointConfigs",
"sagemaker:DescribeCluster",
"sagemaker:ListClusters",
"sagemaker:DescribeClusterNode",
"sagemaker:ListClusterNodes",
"sagemaker:AttachClusterNodeVolume",
"sagemaker:DetachClusterNodeVolume",
"sagemaker:DescribeMlflowTrackingServer",
"sagemaker:ListMlflowTrackingServers",
"sagemaker:StopMlflowTrackingServer",
"sagemaker:StopLabelingJob",
"sagemaker:DescribeUserProfile"
],
"Resource": "*"
},
{
"Sid": "LambdaActions",
"Effect": "Allow",
"Action": [
"lambda:GetFunctionConfiguration",
"lambda:ListFunctions",
"lambda:GetFunctionConcurrency",
"lambda:PutFunctionConcurrency",
"lambda:DeleteFunctionConcurrency",
"lambda:ListEventSourceMappings",
"lambda:GetEventSourceMapping",
"lambda:GetProvisionedConcurrencyConfig",
"lambda:ListProvisionedConcurrencyConfigs",
"lambda:PutProvisionedConcurrencyConfig",
"lambda:DeleteProvisionedConcurrencyConfig"
],
"Resource": "*"
},
{
"Sid": "BedrockActions",
"Effect": "Allow",
"Action": [
"bedrock:GetProvisionedModelThroughput",
"bedrock:ListProvisionedModelThroughputs",
"bedrock:UpdateProvisionedModelThroughput",
"bedrock:GetModelInvocationJob",
"bedrock:ListModelInvocationJobs",
"bedrock:StopModelInvocationJob",
"bedrock:GetModelCustomizationJob",
"bedrock:ListModelCustomizationJobs",
"bedrock:StopModelCustomizationJob",
"bedrock:GetEvaluationJob",
"bedrock:ListEvaluationJobs",
"bedrock:StopEvaluationJob"
],
"Resource": "*"
},
{
"Sid": "SSMAutomation",
"Effect": "Allow",
"Action": [
"ssm:StartAutomationExecution",
"ssm:GetAutomationExecution",
"ssm:DescribeAutomationExecutions",
"ssm:DescribeAutomationStepExecutions",
"ssm:StopAutomationExecution"
],
"Resource": [
"arn:aws:ssm:*:*:document/AWS-StartEC2Instance",
"arn:aws:ssm:*:*:document/AWS-StopEC2Instance",
"arn:aws:ssm:*:*:document/AWS-StartRdsInstance",
"arn:aws:ssm:*:*:document/AWS-StopRdsInstance",
"arn:aws:ssm:*:*:automation-execution/*",
"arn:aws:ssm:*:*:automation-definition/AWS-StartEC2Instance:*",
"arn:aws:ssm:*:*:automation-definition/AWS-StopEC2Instance:*",
"arn:aws:ssm:*:*:automation-definition/AWS-StartRdsInstance:*",
"arn:aws:ssm:*:*:automation-definition/AWS-StopRdsInstance:*"
]
},
{
"Sid": "CostOptimizationHubActions",
"Effect": "Allow",
"Action": [
"cost-optimization-hub:UpdateEnrollmentStatus",
"cost-optimization-hub:ListEnrollmentStatuses"
],
"Resource": "*"
},
{
"Sid": "ComputeOptimizerActions",
"Effect": "Allow",
"Action": [
"compute-optimizer:GetIdleRecommendations",
"compute-optimizer:GetRecommendationSummaries",
"compute-optimizer:GetEC2InstanceRecommendations",
"compute-optimizer:GetAutoScalingGroupRecommendations",
"compute-optimizer:GetEnrollmentStatus",
"compute-optimizer:UpdateEnrollmentStatus"
],
"Resource": "*"
},
{
"Sid": "ComputeOptimizerAutomationActions",
"Effect": "Allow",
"Action": [
"aco-automation:StartAutomationEvent",
"aco-automation:ListRecommendedActions",
"aco-automation:GetAutomationEvent",
"aco-automation:GetEnrollmentConfiguration",
"aco-automation:UpdateEnrollmentConfiguration"
],
"Resource": "*"
},
{
"Sid": "SSOActions",
"Effect": "Allow",
"Action": [
"sso:ListInstances"
],
"Resource": "*"
},
{
"Sid": "AccountActions",
"Effect": "Allow",
"Action": [
"account:GetAccountInformation",
"account:GetPrimaryEmail"
],
"Resource": "*"
},
{
"Sid": "AllowAWSServiceAccessForCostOptimizationHub",
"Effect": "Allow",
"Action": [
"organizations:EnableAWSServiceAccess"
],
"Resource": "arn:aws:organizations:*:*:*",
"Condition": {
"StringLike": {
"organizations:ServicePrincipal": [
"cost-optimization-hub.bcm.amazonaws.com",
"compute-optimizer.amazonaws.com"
]
}
}
},
{
"Sid": "AllowACOAutomationSLRCreation",
"Effect": "Allow",
"Action": "iam:CreateServiceLinkedRole",
"Resource": "arn:aws:iam::*:role/aws-service-role/aco-automation.amazonaws.com/AWSServiceRoleForComputeOptimizerAutomation",
"Condition": {
"StringLike": {
"iam:AWSServiceName": "aco-automation.amazonaws.com"
}
}
},
{
"Sid": "AllowComputeOptimizerSLRCreation",
"Effect": "Allow",
"Action": "iam:CreateServiceLinkedRole",
"Resource": [
"arn:aws:iam::*:role/aws-service-role/cost-optimization-hub.bcm.amazonaws.com/AWSServiceRoleForCostOptimizationHub",
"arn:aws:iam::*:role/aws-service-role/compute-optimizer.amazonaws.com/AWSServiceRoleForComputeOptimizer",
"arn:aws:iam::*:role/aws-service-role/aco-automation.amazonaws.com/AWSServiceRoleForComputeOptimizerAutomation"
],
"Condition": {
"StringLike": {
"iam:AWSServiceName": "compute-optimizer.amazonaws.com"
}
}
},
{
"Sid": "AllowCostOptimizationHubSLRCreation",
"Effect": "Allow",
"Action": "iam:CreateServiceLinkedRole",
"Resource": "arn:aws:iam::*:role/aws-service-role/cost-optimization-hub.bcm.amazonaws.com/AWSServiceRoleForCostOptimizationHub",
"Condition": {
"StringLike": {
"iam:AWSServiceName": "cost-optimization-hub.bcm.amazonaws.com"
}
}
}
]
},
"VersionId": "v4",
"IsDefaultVersion": true,
"CreateDate": "2026-08-13T20:47:33+00:00"
}
}Version History (4 recorded)
Raw historyv4updated
5 actions added
1 never-before-seen action: aco-automation:GetEnrollmentConfiguration
v3updated
1 action added
Permissions management: iam:CreateServiceLinkedRole: iam:CreateServiceLinkedRole
v2updated
4 actions added
2 never-before-seen actions: aco-automation:UpdateEnrollmentConfiguration, compute-optimizer:UpdateEnrollmentStatus
v1new policy
85 actions added