AmazonMachineLearningRoleforRedshiftDataSourceV3
Summary
Allows Machine Learning to configure and use your Redshift Clusters and S3 Staging Locations for Redshift Data Source.
Permissions imported from the AWS Managed Policy Reference Guide; other sections pending editorial review.
Identity
- ARN
arn:aws:iam::aws:policy/service-role/AmazonMachineLearningRoleforRedshiftDataSourceV3- Default version
- v1
- Created
- Last edited
- Services
- ec2, redshift, s3
Control-plane actions (14)
By access level: 3 List, 1 Permissions management, 3 Read, 7 Write.
| Service | Granted | Access levels and limits | Granted by |
|---|---|---|---|
| EC2 | 5 of 834 | 2 List, 3 Write; 0 restricted, 0 conditional | ec2:AuthorizeSecurityGroupIngress, ec2:CreateSecurityGroup, ec2:DescribeInternetGateways, ec2:DescribeSecurityGroups, ec2:RevokeSecurityGroupIngress |
| Redshift | 6 of 167 | 1 List, 1 Read, 4 Write; 0 restricted, 0 conditional | redshift:AuthorizeClusterSecurityGroupIngress, redshift:CreateClusterSecurityGroup, redshift:DescribeClusterSecurityGroups, redshift:DescribeClusters, redshift:ModifyCluster, redshift:RevokeClusterSecurityGroupIngress |
| S3 | 3 of 155 | 1 Permissions management, 2 Read; 3 restricted, 0 conditional | s3:GetBucketLocation, s3:GetBucketPolicy, s3:PutBucketPolicy |
EC2: 5 actions
- ec2:AuthorizeSecurityGroupIngress (Write)
- ec2:CreateSecurityGroup (Write)
- ec2:DescribeInternetGateways (List)
- ec2:DescribeSecurityGroups (List)
- ec2:RevokeSecurityGroupIngress (Write)
Redshift: 6 actions
- redshift:AuthorizeClusterSecurityGroupIngress (Write)
- redshift:CreateClusterSecurityGroup (Write)
- redshift:DescribeClusterSecurityGroups (Read)
- redshift:DescribeClusters (List)
- redshift:ModifyCluster (Write)
- redshift:RevokeClusterSecurityGroupIngress (Write)
S3: 3 actions
- s3:GetBucketLocation (Read)
- s3:GetBucketPolicy (Read)
- s3:PutBucketPolicy (Permissions management)
Data-plane actions (2)
By access level: 1 Read, 1 Write.
| Service | Granted | Access levels and limits | Granted by |
|---|---|---|---|
| S3 | 2 of 25 | 1 Read, 1 Write; 2 restricted, 0 conditional | s3:GetObject, s3:PutObject |
S3: 2 actions
- s3:GetObject (Read)
- s3:PutObject (Write)
Excluded and conditional actions
No patterns are excluded by NotAction or Deny statements.
Resource scope and attachment
Resource scope across granted actions: mixed.
Can be attached: Yes, to users, groups and roles.
Why this tier
- Grants 9 write, tagging or permissions-management actions, short of full control of any service.
- Grants data-plane write actions on a data store, but only for scoped resources or under conditions.
Guidance
Pending editorial review. The permission data on this page comes straight from AWS; this section will be filled in once a reviewed guide exists.
Related policies
Same service
- AccessAnalyzerServiceRolePolicy
- AdministratorAccess-AWSElasticBeanstalk
- AIDevOpsReleaseManagementVPCPolicy
- AmazonAppFlowFullAccess
- AmazonAppStreamServiceAccess
- AmazonBedrockStudioPermissionsBoundary
- AmazonBioDiscoveryServiceLinkedRolePolicy
- AmazonBraketJobsExecutionPolicy
Same domain
Frequently asked questions
Pending editorial review. The permission data on this page comes straight from AWS; this section will be filled in once a reviewed guide exists.
Policy JSON
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"ec2:AuthorizeSecurityGroupIngress",
"ec2:CreateSecurityGroup",
"ec2:DescribeInternetGateways",
"ec2:DescribeSecurityGroups",
"ec2:RevokeSecurityGroupIngress",
"redshift:AuthorizeClusterSecurityGroupIngress",
"redshift:CreateClusterSecurityGroup",
"redshift:DescribeClusters",
"redshift:DescribeClusterSecurityGroups",
"redshift:ModifyCluster",
"redshift:RevokeClusterSecurityGroupIngress"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": [
"s3:PutBucketPolicy",
"s3:GetBucketLocation",
"s3:GetBucketPolicy",
"s3:GetObject",
"s3:PutObject"
],
"Resource": "arn:aws:s3:::amazon-machine-learning*"
}
]
}
Version history
Current version v1, edited by AWS on 2020-06-24. Version history is recorded from 2026-11-11. Earlier versions are in the IAM console under Policy versions.
Attach snippets
AWS CLI
aws iam attach-role-policy --role-name ROLE_NAME --policy-arn arn:aws:iam::aws:policy/service-role/AmazonMachineLearningRoleforRedshiftDataSourceV3
aws iam attach-user-policy --user-name USER_NAME --policy-arn arn:aws:iam::aws:policy/service-role/AmazonMachineLearningRoleforRedshiftDataSourceV3
aws iam attach-group-policy --group-name GROUP_NAME --policy-arn arn:aws:iam::aws:policy/service-role/AmazonMachineLearningRoleforRedshiftDataSourceV3CloudFormation
Resources:
ExampleRole:
Type: AWS::IAM::Role
Properties:
AssumeRolePolicyDocument: {} # replace with your trust policy
ManagedPolicyArns:
- arn:aws:iam::aws:policy/service-role/AmazonMachineLearningRoleforRedshiftDataSourceV3Terraform
resource "aws_iam_role_policy_attachment" "service_role_amazonmachinelearningroleforredshiftdatasourcev3" {
role = aws_iam_role.example.name
policy_arn = "arn:aws:iam::aws:policy/service-role/AmazonMachineLearningRoleforRedshiftDataSourceV3"
}CDK (TypeScript)
role.addManagedPolicy(
iam.ManagedPolicy.fromAwsManagedPolicyName("service-role/AmazonMachineLearningRoleforRedshiftDataSourceV3"),
);Sources
Pending editorial review. No editorial sources are listed yet.