Amazon S3 权限错误 403,简单上传一个文本文件
Amazon S3 Permission Errors 403, simple upload of a text file
所以我在 Whosebug 中使用了几个不同的教程,它们似乎都出现了同样的错误:403 权限被拒绝。
我正在使用 python2.7 和 boto ubuntu 14.04.
下面是代码(没有密钥和存储桶名称),我想知道为什么我被拒绝访问我自己的存储桶。
我在 IAM 中创建了一个对 S3 具有完全访问权限的用户,并且我将存储桶的权限设置为允许 'Everyone' 到 upload/download。我使用的是正确的密钥,因为我将它们复制并粘贴到了代码中。
这会不会与存储桶策略有关?或者有什么我不知道的?我是新手,只需要这个来上传和下载 S3 上的文本文件。
import boto
from boto.s3.key import Key
import boto.s3.connection
AWS_ACCESS_KEY_ID = ''
AWS_SECRET_ACCESS_KEY = ''
Bucketname = ''
conn = boto.connect_s3(aws_access_key_id=AWS_ACCESS_KEY_ID,
aws_secret_access_key=AWS_SECRET_ACCESS_KEY )
bucket = conn.get_bucket(Bucketname)
评论很有帮助,谢谢 FirebladeDan。所以我创建了一个具有管理员访问权限和完全 S3 访问权限的用户。这一切都是在 IAM 中完成的。现在,在存储桶属性中,我向 Grantee 'Everyone' 添加了一个权限集,允许他们 upload/download 并列出。现在最后一步是添加存储桶策略。我认为我不需要这样做,所以我在这里发帖。
我错了。所以这就是我用的。注意:这允许我上传到 S3,但是大多数时候 set_contents_from_filename() 只上传 header 而并不总是上传文件。这可能是我的代码中的一个错误,但如果您遇到同样的事情,那么此政策可能需要某种额外的权限。
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "USERNAME",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::GETNUMBERSOFUSER:root"
},
"Action": "s3:*",
"Resource": [
"arn:aws:s3:::BUCKETNAME",
"arn:aws:s3:::BUCKETNAME/*"
]
}
]
}
所以我在 Whosebug 中使用了几个不同的教程,它们似乎都出现了同样的错误:403 权限被拒绝。
我正在使用 python2.7 和 boto ubuntu 14.04.
下面是代码(没有密钥和存储桶名称),我想知道为什么我被拒绝访问我自己的存储桶。
我在 IAM 中创建了一个对 S3 具有完全访问权限的用户,并且我将存储桶的权限设置为允许 'Everyone' 到 upload/download。我使用的是正确的密钥,因为我将它们复制并粘贴到了代码中。
这会不会与存储桶策略有关?或者有什么我不知道的?我是新手,只需要这个来上传和下载 S3 上的文本文件。
import boto
from boto.s3.key import Key
import boto.s3.connection
AWS_ACCESS_KEY_ID = ''
AWS_SECRET_ACCESS_KEY = ''
Bucketname = ''
conn = boto.connect_s3(aws_access_key_id=AWS_ACCESS_KEY_ID,
aws_secret_access_key=AWS_SECRET_ACCESS_KEY )
bucket = conn.get_bucket(Bucketname)
评论很有帮助,谢谢 FirebladeDan。所以我创建了一个具有管理员访问权限和完全 S3 访问权限的用户。这一切都是在 IAM 中完成的。现在,在存储桶属性中,我向 Grantee 'Everyone' 添加了一个权限集,允许他们 upload/download 并列出。现在最后一步是添加存储桶策略。我认为我不需要这样做,所以我在这里发帖。
我错了。所以这就是我用的。注意:这允许我上传到 S3,但是大多数时候 set_contents_from_filename() 只上传 header 而并不总是上传文件。这可能是我的代码中的一个错误,但如果您遇到同样的事情,那么此政策可能需要某种额外的权限。
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "USERNAME",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::GETNUMBERSOFUSER:root"
},
"Action": "s3:*",
"Resource": [
"arn:aws:s3:::BUCKETNAME",
"arn:aws:s3:::BUCKETNAME/*"
]
}
]
}