我有错误当调用方法amazons3.ListObjects时,请求时间和当前时间之间的差异太大
ListObjectsRequest request = new ListObjectsRequest() {
BucketName = BucketName, Prefix = fullKey
};
using (ListObjectsResponse response = s3Client.ListObjects(request))
{
bool result = response.S3Objects.Count > 0;
return result;
}
Run Code Online (Sandbox Code Playgroud)
可能是什么?
我正在尝试通过cli将文件从私有s3-bucket复制到我的ec2实例.ec2与存储桶位于同一区域,并附加了以下IAM角色(AmazonS3FullAccess):
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "s3:*",
"Resource": "*"
}
]
}
Run Code Online (Sandbox Code Playgroud)
但该命令aws s3 cp s3://[BUCKETNAME]/index.html失败并显示错误:
调用HeadObject操作时发生客户端错误(400):错误请求已完成1个部分,其中有...文件剩余.
我已经仔细检查了桶名的拼写...
尝试将文件从S3存储桶复制到本地计算机:
aws s3 cp s3://my-bucket-name/audio-0b7ea3d0-13ab-4c7c-ac66-1bec2e572c14.wav ./
fatal error: An error occurred (403) when calling the HeadObject operation: Forbidden
Run Code Online (Sandbox Code Playgroud)
我确认的事情:
aws-cli/1.11.13 Python/3.5.2 Linux/4.4.0-75-generic botocore/1.4.70存储桶策略旨在授予广泛的开放访问权限:
{
"Sid": "AdminAccess",
"Effect": "Allow",
"Principal": "*",
"Action": [
"s3:*"
],
"Resource": [
"arn:aws:s3:::my-bucket-name",
"arn:aws:s3:::my-bucket-name/*"
]
}
Run Code Online (Sandbox Code Playgroud)
我是如何上传此对象的?
我使用AWS Signature v4签名上传策略将此对象从客户端浏览器中的Web应用程序直接上传到AWS.
回答没有帮助
s3存储桶的资源策略bucket1是:
{
"Version": "2012-10-17",
"Statement": [{
"Effect": "Deny",
"Principal": "*",
"Action": "s3:*",
"Resource": "arn:aws:s3:::bucket1/*",
"Condition": {
"Bool": {
"aws:SecureTransport": "false"
}
}
},
{
"Effect": "Deny",
"Principal": "*",
"Action": "s3:PutObject",
"Resource": "arn:aws:s3:::bucket1/*",
"Condition": {
"StringNotEquals": {
"s3:x-amz-server-side-encryption": "AES256"
}
}
},
{
"Effect": "Deny",
"Principal": "*",
"Action": "s3:PutObject",
"Resource": "arn:aws:s3:::bucket1/*",
"Condition": {
"Null": {
"s3:x-amz-server-side-encryption": "true"
}
}
}
]
}
Run Code Online (Sandbox Code Playgroud)
IAM 政策是bucket1:
{
"Action": [
"s3:GetObject"
],
"Resource": [
"arn:aws:s3:::bucket1",
"arn:aws:s3:::bucket1/*"
],
"Effect": …Run Code Online (Sandbox Code Playgroud)