本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
允许对 存储桶的读取和写入访问权限
此部分说明了如何创建 IAM 策略,以允许对特定 Amazon S3 存储桶进行读写访问。通过将具有此 策略的 角色分配给 SFTP 用户,将允许该用户对指定的 S3 存储桶进行读/写访问。
以下策略允许通过编程方式对 存储桶进行读写访问。只有当您需要启用跨账户存取时,才需要GetObjectACL
和PutObjectACL
语句。也就是说,您的 Transfer Family 服务器需要访问其他账户中的存储桶。
{ "Version": "2012-10-17", "Statement": [ { "Sid":"ReadWriteS3", "Action": [ "s3:ListBucket" ], "Effect": "Allow", "Resource": ["arn:aws:s3:::DOC-EXAMPLE-BUCKET"] }, { "Effect": "Allow", "Action": [ "s3:PutObject", "s3:GetObject", "s3:GetObjectTagging", "s3:DeleteObject", "s3:DeleteObjectVersion", "s3:GetObjectVersion", "s3:GetObjectVersionTagging", "s3:GetObjectACL", "s3:PutObjectACL" ], "Resource": ["arn:aws:s3:::DOC-EXAMPLE-BUCKET/*"] } ] }
ListBucket
操作需要对存储桶本身的权限。PUT
、GET
和 DELETE
操作需要对象权限。由于这些是不同的实体,因此使用不同的 Amazon 资源名称 (ARN) 指定它们。
要进一步缩小用户的访问权限以使其仅能访问指定的 S3 存储桶的 home
目录,请参阅为 Amazon S3 存储桶创建会话策略。