AmazonRedshiftAllCommandsFullAccess

Last Modified

Mar 12, 2026

March 12, 2026 at 09:28 PM UTC

Version

v2

Total Versions

2

Created

Nov 25, 2021

Actions

75

Risk

Medium

The 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.

    • sagemaker-002iam:PassRole + sagemaker:CreateTrainingJobscoped
      • iam:PassRole: condition iam:PassedToService, on arn:aws:iam::*:role/*
      • sagemaker:CreateTrainingJob: on arn:aws:sagemaker:*:*:model/*redshift*, arn:aws:sagemaker:*:*:training-job/*redshift*, arn:aws:sagemaker:*:*:automl-job/*redshift*
    • sagemaker-003iam:PassRole + sagemaker:CreateProcessingJobscoped
      • iam:PassRole: condition iam:PassedToService, on arn:aws:iam::*:role/*
      • sagemaker:CreateProcessingJob: on arn:aws:sagemaker:*:*:model/*redshift*, arn:aws:sagemaker:*:*:training-job/*redshift*, arn:aws:sagemaker:*:*:automl-job/*redshift*

    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 (2)

  • Suggestion / REDUNDANT_RESOURCE

    The 4 resource ARN(s) are redundant because they reference the same resource. Review the use of wildcards (*), or remove the resource arn:aws:s3:::redshift-downloads/* to remove the redundancy. AWS docs

  • 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:dynamodb:*:*:table/*redshift*/index/* to remove the redundancy. AWS docs

Policy Document

View on GitHub
{
  "PolicyVersion": {
    "Document": {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Effect": "Allow",
          "Action": [
            "sagemaker:CreateTrainingJob",
            "sagemaker:CreateAutoMLJob",
            "sagemaker:CreateCompilationJob",
            "sagemaker:CreateEndpoint",
            "sagemaker:DescribeAutoMLJob",
            "sagemaker:DescribeTrainingJob",
            "sagemaker:DescribeCompilationJob",
            "sagemaker:DescribeProcessingJob",
            "sagemaker:DescribeTransformJob",
            "sagemaker:ListCandidatesForAutoMLJob",
            "sagemaker:StopAutoMLJob",
            "sagemaker:StopCompilationJob",
            "sagemaker:StopTrainingJob",
            "sagemaker:DescribeEndpoint",
            "sagemaker:InvokeEndpoint",
            "sagemaker:StopProcessingJob",
            "sagemaker:CreateModel",
            "sagemaker:CreateProcessingJob"
          ],
          "Resource": [
            "arn:aws:sagemaker:*:*:model/*redshift*",
            "arn:aws:sagemaker:*:*:training-job/*redshift*",
            "arn:aws:sagemaker:*:*:automl-job/*redshift*",
            "arn:aws:sagemaker:*:*:compilation-job/*redshift*",
            "arn:aws:sagemaker:*:*:processing-job/*redshift*",
            "arn:aws:sagemaker:*:*:transform-job/*redshift*",
            "arn:aws:sagemaker:*:*:endpoint/*redshift*"
          ]
        },
        {
          "Effect": "Allow",
          "Action": [
            "logs:CreateLogGroup",
            "logs:CreateLogStream",
            "logs:DescribeLogStreams",
            "logs:PutLogEvents"
          ],
          "Resource": [
            "arn:aws:logs:*:*:log-group:/aws/sagemaker/Endpoints/*redshift*",
            "arn:aws:logs:*:*:log-group:/aws/sagemaker/ProcessingJobs/*redshift*",
            "arn:aws:logs:*:*:log-group:/aws/sagemaker/TrainingJobs/*redshift*",
            "arn:aws:logs:*:*:log-group:/aws/sagemaker/TransformJobs/*redshift*"
          ]
        },
        {
          "Effect": "Allow",
          "Action": [
            "cloudwatch:PutMetricData"
          ],
          "Resource": "*",
          "Condition": {
            "StringEquals": {
              "cloudwatch:namespace": [
                "SageMaker",
                "/aws/sagemaker/Endpoints",
                "/aws/sagemaker/ProcessingJobs",
                "/aws/sagemaker/TrainingJobs",
                "/aws/sagemaker/TransformJobs"
              ]
            }
          }
        },
        {
          "Effect": "Allow",
          "Action": [
            "ecr:BatchCheckLayerAvailability",
            "ecr:BatchGetImage",
            "ecr:GetAuthorizationToken",
            "ecr:GetDownloadUrlForLayer"
          ],
          "Resource": "*"
        },
        {
          "Effect": "Allow",
          "Action": [
            "s3:GetObject",
            "s3:GetBucketAcl",
            "s3:GetBucketCors",
            "s3:GetEncryptionConfiguration",
            "s3:GetBucketLocation",
            "s3:ListBucket",
            "s3:ListAllMyBuckets",
            "s3:ListMultipartUploadParts",
            "s3:ListBucketMultipartUploads",
            "s3:PutObject",
            "s3:PutBucketAcl",
            "s3:PutBucketCors",
            "s3:DeleteObject",
            "s3:AbortMultipartUpload",
            "s3:CreateBucket"
          ],
          "Resource": [
            "arn:aws:s3:::redshift-downloads",
            "arn:aws:s3:::redshift-downloads/*",
            "arn:aws:s3:::*redshift*",
            "arn:aws:s3:::*redshift*/*"
          ]
        },
        {
          "Effect": "Allow",
          "Action": [
            "s3:GetObject"
          ],
          "Resource": "*",
          "Condition": {
            "StringEqualsIgnoreCase": {
              "s3:ExistingObjectTag/Redshift": "true"
            }
          }
        },
        {
          "Effect": "Allow",
          "Action": [
            "dynamodb:Scan",
            "dynamodb:DescribeTable",
            "dynamodb:Getitem"
          ],
          "Resource": [
            "arn:aws:dynamodb:*:*:table/*redshift*",
            "arn:aws:dynamodb:*:*:table/*redshift*/index/*"
          ]
        },
        {
          "Effect": "Allow",
          "Action": [
            "elasticmapreduce:ListInstances"
          ],
          "Resource": [
            "arn:aws:elasticmapreduce:*:*:cluster/*redshift*"
          ]
        },
        {
          "Effect": "Allow",
          "Action": [
            "elasticmapreduce:ListInstances"
          ],
          "Resource": "*",
          "Condition": {
            "StringEqualsIgnoreCase": {
              "elasticmapreduce:ResourceTag/Redshift": "true"
            }
          }
        },
        {
          "Effect": "Allow",
          "Action": [
            "lambda:InvokeFunction"
          ],
          "Resource": "arn:aws:lambda:*:*:function:*redshift*"
        },
        {
          "Effect": "Allow",
          "Action": [
            "glue:CreateDatabase",
            "glue:DeleteDatabase",
            "glue:GetDatabase",
            "glue:GetDatabases",
            "glue:UpdateDatabase",
            "glue:CreateTable",
            "glue:DeleteTable",
            "glue:BatchDeleteTable",
            "glue:UpdateTable",
            "glue:GetTable",
            "glue:GetTables",
            "glue:BatchCreatePartition",
            "glue:CreatePartition",
            "glue:DeletePartition",
            "glue:BatchDeletePartition",
            "glue:UpdatePartition",
            "glue:GetPartition",
            "glue:GetPartitions",
            "glue:BatchGetPartition"
          ],
          "Resource": [
            "arn:aws:glue:*:*:table/*redshift*/*",
            "arn:aws:glue:*:*:catalog",
            "arn:aws:glue:*:*:database/*redshift*"
          ]
        },
        {
          "Effect": "Allow",
          "Action": [
            "secretsmanager:GetResourcePolicy",
            "secretsmanager:GetSecretValue",
            "secretsmanager:DescribeSecret",
            "secretsmanager:ListSecretVersionIds"
          ],
          "Resource": [
            "arn:aws:secretsmanager:*:*:secret:*redshift*"
          ]
        },
        {
          "Effect": "Allow",
          "Action": [
            "secretsmanager:GetRandomPassword",
            "secretsmanager:ListSecrets"
          ],
          "Resource": "*"
        },
        {
          "Effect": "Allow",
          "Action": [
            "iam:PassRole"
          ],
          "Resource": "arn:aws:iam::*:role/*",
          "Condition": {
            "StringEquals": {
              "iam:PassedToService": [
                "redshift.amazonaws.com",
                "glue.amazonaws.com",
                "sagemaker.amazonaws.com",
                "athena.amazonaws.com"
              ]
            }
          }
        }
      ]
    },
    "VersionId": "v2",
    "IsDefaultVersion": true,
    "CreateDate": "2021-11-25T02:27:31+00:00"
  }
}

Version History (5 recorded)

Raw history

AmazonRedshiftAllCommandsFullAccess - Policy Version v2

No recorded action delta - this version predates the change index. View the raw diff.

Mar 12, 2026

585e3a1

Update detected

No recorded action delta - this version predates the change index. View the raw diff.

Sep 18, 2024

aafbae9

Update detected

No recorded action delta - this version predates the change index. View the raw diff.

May 13, 2024

1b36617

Update detected

No recorded action delta - this version predates the change index. View the raw diff.

Nov 25, 2021

1775325

Update detected

No recorded action delta - this version predates the change index. View the raw diff.

Nov 4, 2021

4077735