aws ios sdk-发布从s3下载图像
我试图使用iOS sdk(swift)从我的s3存储桶下载图像,但我总是得到aws ios sdk-发布从s3下载图像,ios,swift,amazon-s3,aws-sdk,aws-ios,Ios,Swift,Amazon S3,Aws Sdk,Aws Ios,我试图使用iOS sdk(swift)从我的s3存储桶下载图像,但我总是得到访问被拒绝错误 Domain=com.amazonaws.AWSS3ErrorDomain Code=1“(null)”UserInfo={HostId=asadadadadad=,Message=Access-Denied,Code=AccessDenied,RequestId=A467438974F8127B}] 当我不使用任何ACL设置时,它可以很好地用于上传。如果我设置ACL let uploadReque
访问被拒绝错误
Domain=com.amazonaws.AWSS3ErrorDomain Code=1“(null)”UserInfo={HostId=asadadadadad=,Message=Access-Denied,Code=AccessDenied,RequestId=A467438974F8127B}]
当我不使用任何ACL设置时,它可以很好地用于上传。如果我设置ACL
let uploadRequest = AWSS3TransferManagerUploadRequest()
uploadRequest.ACL = AWSS3ObjectCannedACL.AuthenticatedRead
上载和下载都失败
以下是我的cognito和IAM政策
{
"Version": "2012-10-17",
"Statement": [
{
"Action": [
"s3:GetObject",
"s3:PutObject"
],
"Effect": "Allow",
"Resource":["arn:aws:s3:::yimages/*"]
},{
"Action": [
"s3:GetObject",
"s3:PutObject"
],
"Effect": "Allow",
"Resource":["arn:aws:s3:::yimages"]
}
]
}
及
我确信这是与政策有关的事情,但我不知道是什么。。让我困惑的是,为什么上传可以正常工作,而下载却不行
非常感谢您的帮助
GetObject和PutObject是指对bucket中的对象执行的操作,不适用于bucket(arn:aws:s3:::yimages)。对于bucket本身,您需要提供如下bucket操作:
您可以尝试将类似的策略添加到“权限”选项卡的显式“Bucket policy”部分,以指定Bucket和对象级别的权限
GetObject和PutObject是指对bucket中的对象执行的操作,不适用于bucket(arn:aws:s3:::yimages)。对于bucket本身,您需要提供如下bucket操作:
您可以尝试将类似的策略添加到“权限”选项卡的显式“Bucket policy”部分,以指定Bucket和对象级别的权限
{
"Version":"2012-10-17",
"Statement":[
{
"Sid":"AddCannedAcl",
"Effect":"Allow",
"Principal": "*",
"Action": [
"s3:GetObject",
"s3:PutObject"
],
"Resource":["arn:aws:s3:::yimages/*"]
}
]
}
"Action": [
"s3:GetBucketLocation",
"s3:ListBucket",
"s3:ListAllMyBuckets"
]