以下是AWS S3权限的全面分类列表,涵盖存储桶级操作、对象级操作、跨账户访问、生命周期管理等核心场景,结合官方文档及最新实践整理:
s3:ListBucket:列出存储桶内的对象(如通过ListObjectsV2 API)。s3:GetBucketLocation:获取存储桶所在区域。s3:CreateBucket:创建新存储桶。s3:DeleteBucket:删除空存储桶。s3:PutBucketAcl:修改存储桶的ACL(访问控制列表)。s3:GetBucketAcl:查看存储桶的ACL配置。s3:PutBucketPolicy:设置存储桶策略(JSON格式,支持细粒度控制)。s3:GetBucketPolicy:查看存储桶策略内容。s3:PutBucketCORS:配置跨域资源共享(CORS)规则。s3:GetBucketCORS:查看CORS配置。s3:PutBucketVersioning:启用/禁用版本控制。s3:GetBucketVersioning:查看版本控制状态。s3:PutBucketLogging:设置访问日志记录。s3:GetBucketLogging:查看日志记录配置。s3:PutBucketNotification:配置事件通知(如上传对象时触发Lambda)。s3:GetBucketNotification:查看事件通知配置。s3:PutBucketReplication:设置跨区域复制规则。s3:GetBucketReplication:查看复制配置。s3:PutBucketPublicAccessBlock:阻止公共访问(如禁止匿名读写)。s3:GetBucketPublicAccessBlock:查看公共访问阻止状态。s3:PutBucketOwnershipControls:管理对象所有权(如强制存储桶拥有者模式)。s3:GetBucketOwnershipControls:查看所有权控制配置。s3:GetObject:读取对象内容(如下载文件)。s3:PutObject:上传新对象或覆盖现有对象。s3:DeleteObject:删除指定对象。s3:RestoreObject:从归档存储(如Glacier)还原对象。s3:GetObjectAcl:查看对象的ACL配置。s3:PutObjectAcl:修改对象的ACL。s3:GetObjectTagging:查看对象标签。s3:PutObjectTagging:为对象添加或修改标签。s3:GetObjectVersion:访问对象的特定版本(需启用版本控制)。s3:DeleteObjectVersion:删除对象的某个历史版本。s3:AbortMultipartUpload:取消未完成的多部分上传。s3:ListMultipartUploadParts:查看多部分上传的已上传部分。s3:ListBucket + s3:GetObject:允许其他账户用户列出并下载对象。s3:PutObject:允许其他账户用户上传对象到指定存储桶。s3:PutBucketLifecycle:设置对象生命周期策略(如自动转储到低成本存储)。s3:GetBucketLifecycle:查看生命周期配置。s3:PutBucketEncryption:配置默认加密(SSE-S3/SSE-KMS)。s3:GetBucketEncryption:查看加密配置。s3:GetBucketLogging:查看访问日志配置。s3:GetBucketMetrics:访问存储桶的分析和指标数据。s3:GetBucketAnalytics:查看分析配置(如存储类分析)。只读访问
json{ "Effect": "Allow", "Action": ["s3:ListBucket", "s3:GetObject"], "Resource": ["arn:aws:s3:::example-bucket", "arn:aws:s3:::example-bucket/*"] }
写入但禁止删除
json{ "Effect": "Allow", "Action": ["s3:PutObject", "s3:AbortMultipartUpload"], "Resource": "arn:aws:s3:::example-bucket/*" }
管理员权限(谨慎使用)
json{ "Effect": "Allow", "Action": "s3:*", "Resource": "*" }
s3:*通配符。免责声明:本站的所有博客、言论等仅代表作者个人观点,与本网站立场无关。本站公开发布此信息的目的在于传播更多信息,如有侵权请立即与我们联系,我们将及时处理。
评论 0
分享
收藏
打赏
举报