【问题标题】:How to set permissions to view/restore AWS S3 object version history如何设置权限以查看/恢复 AWS S3 对象版本历史记录
【发布时间】:2021-11-22 17:38:43
【问题描述】:

我似乎无法弄清楚我必须向我的策略添加哪些权限才能允许 IAM 用户访问查看/下载对象的以前版本。

目前,我的策略包含以下权限。登录 AWS 控制台网站后,用户确实可以看到存储桶中所有对象的先前版本的完整历史记录:

    "Action": [
        "s3:PutObject",
        "s3:GetObject",
        "s3:ListBucket",
        "s3:GetBucketVersioning",
        "s3:ListBucketVersions",
        "s3:GetObjectTagging",
        "s3:PutObjectTagging"]

但是,当单击其中一个对象查看以前的版本时,打开或下载文件失败,并显示“访问被拒绝”错误。

我也找到了这个API call,但它也只要求设置“s3:ListBucketVersions”权限,就是这样。

此外,对于以前的版本(而不仅仅是最新版本)执行“get”或“put”需要什么?

【问题讨论】:

    标签: amazon-web-services amazon-s3 aws-permissions


    【解决方案1】:

    这是我正在使用的策略。您需要对象的 GetObject、GetObjectVersion(以及 Put 操作)和存储桶的 ListBucket、ListBucketVersion。

        - PolicyDocument:
            Version: '2012-10-17'
            Statement:
              - Action:
                  - s3:GetObject
                  - s3:GetObjectVersion
                Effect: 'Allow'
                Resource:
                  - !Sub ${ResourcesBucket.Arn}/*
              - Action:
                  - s3:ListBucket
                  - s3:ListBucketVersions
                Effect: 'Allow'
                Resource:
                  - !GetAtt ResourcesBucket.Arn   
    

    【讨论】:

      猜你喜欢
      • 2021-12-05
      • 2019-05-30
      • 1970-01-01
      • 2020-02-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-02-13
      相关资源
      最近更新 更多