ConsoleViewOnlyAccessFromVercel

Last Modified

Oct 8, 2026

October 8, 2026 at 02:03 PM UTC

Version

v6

Total Versions

4

Created

Oct 8, 2026

Actions

104

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 read data in every bucket or table

    Reads any object in any S3 bucket. Read-only is not the same as harmless when the data is the asset.

    s3:GetObject

    Use with caution: Read access to data is still access to data. For people who only need to see configuration, ViewOnlyAccess carries none of these signals.

Policy Document

View on GitHub
{
  "PolicyVersion": {
    "Document": {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Sid": "DSQL",
          "Effect": "Allow",
          "Action": [
            "dsql:GetCluster",
            "dsql:ListClusters",
            "dsql:ListTagsForResource"
          ],
          "Resource": [
            "*"
          ]
        },
        {
          "Sid": "DynamoDB",
          "Effect": "Allow",
          "Action": [
            "dynamodb:ListTables",
            "dynamodb:ListTagsOfResource",
            "dynamodb:DescribeTimeToLive",
            "dynamodb:DescribeTable",
            "dynamodb:DescribeLimits"
          ],
          "Resource": [
            "*"
          ]
        },
        {
          "Sid": "Aurora",
          "Effect": "Allow",
          "Action": [
            "rds:Describe*",
            "rds:ListTagsForResource",
            "ec2:DescribeAvailabilityZones"
          ],
          "Resource": [
            "*"
          ]
        },
        {
          "Sid": "OpenSearchServerless",
          "Effect": "Allow",
          "Action": [
            "aoss:BatchGetCollection",
            "aoss:BatchGetCollectionGroup",
            "aoss:GetAccessPolicy",
            "aoss:GetIndex",
            "aoss:GetSecurityPolicy",
            "aoss:ListAccessPolicies",
            "aoss:ListCollectionGroups",
            "aoss:ListCollections",
            "aoss:ListSecurityPolicies",
            "aoss:ListSecurityConfigs",
            "aoss:ListTagsForResource"
          ],
          "Resource": [
            "*"
          ]
        },
        {
          "Sid": "OpenSearchApplications",
          "Effect": "Allow",
          "Action": [
            "es:GetApplication",
            "es:ListApplications"
          ],
          "Resource": [
            "*"
          ]
        },
        {
          "Sid": "S3GeneralPurpose",
          "Effect": "Allow",
          "Action": [
            "s3:ListAllMyBuckets",
            "s3:ListBucket",
            "s3:ListBucketVersions",
            "s3:ListBucketMultipartUploads",
            "s3:ListMultipartUploadParts",
            "s3:GetBucketAcl",
            "s3:GetBucketCORS",
            "s3:GetEncryptionConfiguration",
            "s3:GetIntelligentTieringConfiguration",
            "s3:GetInventoryConfiguration",
            "s3:GetAnalyticsConfiguration",
            "s3:GetLifecycleConfiguration",
            "s3:GetBucketLocation",
            "s3:GetBucketLogging",
            "s3:GetBucketMetadataTableConfiguration",
            "s3:GetBucketNotification",
            "s3:GetBucketOwnershipControls",
            "s3:GetBucketPolicy",
            "s3:GetBucketPolicyStatus",
            "s3:GetReplicationConfiguration",
            "s3:GetBucketRequestPayment",
            "s3:GetBucketTagging",
            "s3:GetBucketVersioning",
            "s3:GetBucketWebsite",
            "s3:GetObject",
            "s3:GetObjectAcl",
            "s3:GetObjectAttributes",
            "s3:GetObjectLegalHold",
            "s3:GetBucketObjectLockConfiguration",
            "s3:GetObjectRetention",
            "s3:GetObjectTagging",
            "s3:GetBucketPublicAccessBlock",
            "s3:GetBucketAbac",
            "s3:GetObjectAnnotation",
            "s3:ListObjectAnnotations",
            "s3:ListTagsForResource"
          ],
          "Resource": [
            "*"
          ]
        },
        {
          "Sid": "S3Tables",
          "Effect": "Allow",
          "Action": [
            "s3tables:GetNamespace",
            "s3tables:GetTable",
            "s3tables:GetTableBucket",
            "s3tables:GetTableBucketEncryption",
            "s3tables:GetTableBucketMaintenanceConfiguration",
            "s3tables:GetTableBucketPolicy",
            "s3tables:GetTableBucketReplication",
            "s3tables:GetTableBucketStorageClass",
            "s3tables:GetTableData",
            "s3tables:GetTableEncryption",
            "s3tables:GetTableMaintenanceConfiguration",
            "s3tables:GetTableMaintenanceJobStatus",
            "s3tables:GetTableMetadataLocation",
            "s3tables:GetTablePolicy",
            "s3tables:GetTableRecordExpirationConfiguration",
            "s3tables:GetTableRecordExpirationJobStatus",
            "s3tables:GetTableReplication",
            "s3tables:GetTableReplicationStatus",
            "s3tables:GetTableStorageClass",
            "s3tables:ListNamespaces",
            "s3tables:ListTables",
            "s3tables:ListTableBuckets",
            "s3tables:ListTagsForResource"
          ],
          "Resource": [
            "*"
          ]
        },
        {
          "Sid": "S3Vectors",
          "Effect": "Allow",
          "Action": [
            "s3vectors:GetIndex",
            "s3vectors:GetVectorBucket",
            "s3vectors:GetVectorBucketPolicy",
            "s3vectors:GetVectors",
            "s3vectors:QueryVectors",
            "s3vectors:ListIndexes",
            "s3vectors:ListVectorBuckets",
            "s3vectors:ListVectors",
            "s3vectors:ListTagsForResource"
          ],
          "Resource": [
            "*"
          ]
        },
        {
          "Sid": "Observability",
          "Effect": "Allow",
          "Action": [
            "cloudwatch:DescribeAlarms",
            "cloudwatch:GetMetricData",
            "cloudwatch:GetMetricStatistics",
            "cloudwatch:ListMetrics",
            "logs:DescribeLogStreams",
            "logs:GetLogEvents",
            "tag:GetTagKeys",
            "tag:GetTagValues"
          ],
          "Resource": [
            "*"
          ]
        },
        {
          "Sid": "ApplicationAutoscalingDescribeActions",
          "Effect": "Allow",
          "Action": [
            "application-autoscaling:DescribeScalableTargets",
            "application-autoscaling:DescribeScalingActivities",
            "application-autoscaling:DescribeScalingPolicies"
          ],
          "Resource": "*"
        },
        {
          "Sid": "ViewFreeTierState",
          "Effect": "Allow",
          "Action": [
            "freetier:GetAccountPlanState"
          ],
          "Resource": "*"
        }
      ]
    },
    "VersionId": "v6",
    "IsDefaultVersion": true,
    "CreateDate": "2026-10-08T13:47:07+00:00"
  }
}

Version History (7 recorded)

Raw history
v6updated

68 actions added

1e6a27c
2 never-before-seen actions: s3:GetObjectAnnotation, s3:ListObjectAnnotations
v5updated

13 actions added

f5e28b7
v4updated

scope changed, no action added or removed

f7b9f28

ConsoleViewOnlyAccessFromVercel - Policy Version v4

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

Feb 18, 2026

c859299

ConsoleViewOnlyAccessFromVercel - Policy Version v3

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

Feb 12, 2026

a37ea02

ConsoleViewOnlyAccessFromVercel - Policy Version v2

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

Feb 12, 2026

739f0c0

ConsoleViewOnlyAccessFromVercel - Policy Version v1

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

Dec 11, 2025

f1e6b57