首页 > 其他分享 >S3文件上传,默认公开(可通过对象url在公网访问)

S3文件上传,默认公开(可通过对象url在公网访问)

时间:2022-12-27 15:01:11浏览次数:64  
标签:访问 S3 通过 aws url 密钥 公网 上传

项目中需要上传图片至S3中,但是发现无论是通过AWS控制台上传的还是通过代码上传的,都无法通过url访问,都需要重新设置权限才可以,后来稍微研究了下,总结如下:

1、设置存储桶的共有访问

2、设置存储桶策略

这块比较恶心,不熟悉aws的可能不太会,我也是从网上找的,然后测试的,确实可用,策略代码如下:

其中“20221227bucket”是自己存储桶的名称,其它的复制过去直接用就行。

{
    "Version": "2012-10-17",
    "Id": "S3PolicyId1",
    "Statement": [
        {
            "Sid": "statement1",
            "Effect": "Allow",
            "Principal": {
                "AWS": "*"
            },
            "Action": "s3:GetObject",
            "Resource": "arn:aws:s3:::20221227bucket/*"
        }
    ]
}

然后顺便说下,这个策略可以通过aws自带的策略生成页面去生成,不过也需要你比较了解这些才行(真是服了,之前用过阿里的对象存储感觉很简单)

https://awspolicygen.s3.amazonaws.com/policygen.html

设置完成后,无论是通过aws控制台上传图片还是通过程序上传,都可以通过“对象url”在公网上进行访问。

3、设置访问密钥

通过程序上传图片的时候需要密钥及密钥Id,正常来说是创建IAM账户,然后设置账户的“访问密钥”,但是我对aws不太熟,所以我这里创建的是根账户的密钥(不推荐)

 

 

 

参考:

https://blog.csdn.net/qq_31275085/article/details/113547485

https://blog.upx8.com/2957

标签:访问,S3,通过,aws,url,密钥,公网,上传
From: https://www.cnblogs.com/PrintY/p/17008081.html

相关文章