通过AWS PHP SDK向IAM用户授予对AWS S3文件的权限

巴里·比尔曼

是否可以通过AWS PHP SDK授予特定IAM用户或组对AWS S3文件的完全权限?

我尝试了以下命令:

// Grant permissions via user id
$s3->putObjectAcl(array(
    'Bucket'       => '[Bucket name]',
    'Key'          => '[File location in bucket]',
    'Grants' => array(
        array(
            'Grantee' => array(
                'ID' => '[User ID from IAM API]',
                'Type' => 'CanonicalUser'
            ),
            'Permission' => 'FULL_CONTROL'
        )
    )
));

// Grant permissions via group id
$s3->putObjectAcl(array(
    'Bucket'       => '[Bucket name]',
    'Key'          => '[File location in bucket]',
    'Grants' => array(
        array(
            'Grantee' => array(
                'ID' => '[Group ID from IAM API]',
                'Type' => 'Group'
            ),
            'Permission' => 'FULL_CONTROL'
        )
    )
));

但是他们总是抛出以下错误:

 Argument format not recognized

有人可以告诉我我在做什么错吗?

任何帮助将不胜感激。

罗希特·雷纳(Rohit Raina)

在上面的代码中,您没有指定SourceFile,因此抛出了错误。这是更新的代码,它将帮助您解决此问题。

// Grant permissions via user id
 $s3->putObjectAcl(array(
      'Bucket'       => '[Bucket name]',
      'Key'          => '[File location in bucket]',
      'SourceFile'   => '[File to be uploaded location]',   // add this line
      'Grants' => array(
         array(
             'Grantee' => array(
             'ID' => '[User ID from IAM API]',
             'Type' => 'CanonicalUser'
         ),
             'Permission' => 'FULL_CONTROL'
      )
    )
 ));

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何使用php aws sdk复制整个s3文件夹?

AWS PHP SDK:限制预签名URL中的S3文件上传大小

如何使用IAM策略AWS仅向S3存储桶的根帐户用户授予访问权限?

向同一帐户中的IAM用户授予AWS IAM角色权限

python aws s3文件分发

使用Java的AWS S3文件搜索

向没有AWS账户的用户授予对AWS S3存储桶/文件夹的访问权限

向 Cognito 用户授予对 aws S3 的读/读访问权限

AWS iOS SDK v2文件上传到S3问题

使用aws-sdk-> 2和ruby更改s3文件访问

使用AWS-SDK在Rails中下载用于Ruby的S3文件(对象)

AWS IAM:如何授予特定用户访问特定 dynamoDB 的权限?

如何通过PHP访问AWS S3?

加载文件后如何清理AWS Firehose使用的S3文件?

即使文件存在,使用python boto下载AWS S3文件仍返回404

将AWS Polly mp3文件保存到S3

如何向经过身份验证的网站用户授予对s3文件的访问权限

AWS:无法通过s3存储桶策略授予s3访问权限

Java堆空间不足以将其上传于AWS S3文件

有什么方法可以从AWS Step Function读取S3文件的内容吗?

在Spring Boot中以流形式下载AWS S3文件

S3文件在AWS Lambda中被多次处理

无法在AWS上选择S3文件夹作为CodePipeline的源

将AWS s3文件读取为Java代码

如何使用AWS CLI从S3文件中删除特定标签

如何判断Spark使用什么AWS凭证读取S3文件?

节点JS AWS S3文件上传。如何获得公共URL响应

如何解决拒绝访问的AWS S3文件?

如何从Lambda函数解析AWS S3文件