解决方案:
确认使用了正确的AccessKey ID和AccessKey Secret。详情请参见
创建AccessKey
。
确认RAM用户是否拥有Bucket或Object相关操作权限。
问题原因:匿名用户无权访问此Bucket。
解决方案:请通过Bucket Policy授权匿名用户访问目标Bucket。详情请参见
通过Bucket Policy授权用户访问指定资源
。
Anonymous user has no right to access this object
问题原因:匿名用户无权访问此Object。
解决方案:请通过Bucket Policy授权匿名用户访问目标Bucket中的指定资源。详情请参见
通过Bucket Policy授权用户访问指定资源
。
You are denied by bucket referer policy
问题原因:防盗链校验
解决方案:通过设置Referer白名单以及是否允许空Referer,限制仅白名单中的域名可以访问Bucket内的资源。详情请参见
设置防盗链
。
Invalid according to Policy: Policy expired
问题原因:PostObject中的Policy表单域无效。
解决方案:Post请求的Policy表单域用于验证请求的合法性。Policy为一段经过UTF-8和Base64编码的JSON文本,声明了Post请求必须满足的条件。Post
Policy格式如下:
{ "expiration": "2014-12-01T12:00:00.000Z",
"conditions": [
{"bucket": "johnsmith" },
["starts-with", "$key", "user/eric/"]
}
关于Policy中支持的Conditions详情,请参见
附录:Post Policy
。
Invalid according to Policy: Policy Condition failed: " + RelatedUnit; //XXX
问题原因:Policy表单域中指定的Conditions无效。
解决方案:确保在Policy表单域中指定有效的Conditions。关于Policy表单域中支持的Conditions以及Conditions匹配方式详情,请参见
附录:Post Policy
。
Invalid according to Policy: Policy Condition failed: ["eq", "$Content-Type", "image/png"]
问题原因:上传的文件类型与指定的Content-Type类型不符。
解决方案:Policy中的Content-Type用于限制表单上传时的文件类型。如果Content-Type限制为image/png,则仅支持上传image/png类型的文件。如果您需要上传其他类型的文件,请添加对应的Content-Type类型。关于常见的Content-Type类型列表,请参见
如何设置Content-Type(MIME)?
。
Target object does not reside in the same data center as source object
问题原因:不支持跨地域拷贝文件。
解决方案:仅支持拷贝同一地域下相同或不同存储空间(Bucket)之间的文件(Object)。详情请参见
CopyObject
。
Query string authentication requires the Signature, Expires and OSSAccessKeyId parameters
问题原因:URL签名缺少必要参数。
解决方案:URL签名必须至少包含
Signature
、
Expires
和
OSSAccessKeyId
参数。URL签名示例为
http://oss-example.oss-cn-hangzhou.aliyuncs.com/oss-api.pdf?OSSAccessKeyId=nz2pc56s936**9l&Expires=1141889120&Signature=vjbyPxybdZaNmGa%2ByT272YEAiv****
。关于URL签名的详情,请参见
在URL中包含签名
。
Invalid date (should be seconds since epoch)
问题原因:请求的时间戳无效。
解决方案:
Expires
参数的值是一个
Unix time
(自UTC时间1970年1月1号开始的秒数),用于标识该URL的超时时间。
Request has expired
问题原因:请求已过期。
解决方案:请结合实际使用场景,设置合理的Expires。关于在上传文件时如何设置Expires,请参见
PutObject
、
PostObject
、
AppendObject
和
InitiateMultipartUpload
。
You do not have read permission on this object
问题原因:没有该Object的读取权限。
解决方案:请联系Object拥有者授予您对Object的读取权限。
You do not have write permission on this object
问题原因:没有该Object的写入权限。
解决方案:请联系Object拥有者授予您对Object的写入权限。
You do not have read acl permission on this object
问题原因:没有该Object的ACL读取权限。
解决方案:请联系Object拥有者授予您
GetObjectACL
的权限。
You do not have write acl permission on this object
问题原因:没有该Object的ACL写入权限。
解决方案:请联系Object拥有者授予您
PutObjectACL
的权限。
You have no right to access this object because of bucket acl
问题原因:没有该Object的访问权限。
解决方案:请授予访问者OSS相关访问权限,例如
PutObject
、
GetObject
、
AppendObject
等。详情请参见
RAM Policy常见示例
。
Anonymous access is forbidden for this operation
问题原因:匿名用户没有该操作的对应权限。
解决方案:请通过Bucket Policy授权匿名用户访问目标Bucket中的指定资源。详情请参见
通过Bucket Policy授权用户访问指定资源
。
Access denied by bucket policy
问题原因:通过Bucket Policy的授权访问被拒绝。
解决方案:请结合不同的使用场景灵活配置Bucket Policy。详情请参见
通过Bucket Policy授权用户访问指定资源
。
Access denied by VPC endpoint policy
问题原因:客户端所在VPC添加了Policy授权策略,导致未授权的Bucket无法在VPC环境内访问。
解决方案:请检查您的客户端所在VPC配置的Policy授权策略。
Access denied by authorizer's policy
问题原因:出现该报错通常是无权限执行相关操作。
解决方案:临时访问凭证最终获取的权限是
步骤四
设置的角色权限和
步骤五
中Policy设置权限的交集。请通过以下示例检查您在这两个步骤中设置的权限交集。
步骤四设置的角色权限为
AliyunOSSFullAccess
系统权限,步骤五Policy中设置了
oss:PutObject
权限,则临时访问凭证最终获取的权限为
oss:PutObject
,即仅支持执行向指定Bucket上传文件的操作。
步骤四设置的角色权限为
oss:PutObject
系统权限,步骤五Policy中设置了
oss:GetObject
权限,则临时访问凭证最终未获取任何权限,即无法向指定Bucket执行任何操作。
AccessForbidden
CORSResponse: This CORS request is not allowed. This is usually because the evalution
of Origin, request method / Access-Control-Request-Method or Access-Control-Requet-Headers
are not whitelisted by the resource's CORS spec
问题原因:没有配置CORS或CORS配置错误。
解决方案:请参见
设置跨域资源共享
进行排查。
PermanentRedirect
The bucket you are attempting to access must be addressed using the specified endpoint.
Please send all future requests to this endpoint
问题原因:通过SDK访问OSS中的Bucket时,未指定Endpoint或者指定的Endpoint有误。例如创建的Bucket位于青岛地域,使用了默认配置的
oss-cn-hangzhou.aliyuncs.com
的Endpoint地址发起请求,则出现该报错。
解决方案:确认请求的Endpoint地址与Bucket实际的Endpoint地址一致。例如需要访问青岛和杭州两个节点的Bucket,建议创建多个ossclient,并在ossclient中添加
oss-cn-hangzhou.aliyuncs.com
和
oss-cn-qingdao.aliyuncs.com
两个Endpoint。
SecondLevelDomainForbidden
The bucket you are attempting to access must be addressed using OSS third level domain
问题原因:Bucket的请求域名不为三级域名。
解决方案:针对OSS的网络请求,除了
GetService (ListBuckets)
API以外,其他所有请求的域名均由带有指定Bucket信息的三级域名组成。访问域名结构为
BucketName.Endpoint
,BucketName为您的存储空间名称,Endpoint为存储空间对应的地域域名。例如
https://examplebucket.oss-cn-hangzhou.aliyuncs.com
。
Please use virtual hosted style to access
问题原因:Host错误。
解决方案:通过外网访问OSS服务时,以URL的形式表示访问的OSS资源。OSS的URL结构为
<Schema>://<Bucket>.<外网Endpoint>/<Object>
。其中Schema包含HTTP或者HTTPS,Bucket表示存储空间名称,外网Endpoint为Bucket所在数据中心供外网访问的Endpoint,Object填写上传到OSS上的文件的访问路径。
例如您的Region为华东1(杭州),Bucket名称为examplebucket,Object访问路径为
destfolder/example.txt
,则外网访问地址为
https://examplebucket.oss-cn-hangzhou.aliyuncs.com/destfolder/example.txt
。
NonStandardHostForbidden
Your host is invalid. Please use Open Storage Service standard host
问题原因:Host错误。
解决方案:请使用标准的域名格式访问OSS资源。详情请参见
OSS访问域名使用规则
。
Current user is indebted
问题原因:当您的阿里云账户进入欠费状态时,您会收到相应的通知。同时,您对密钥管理服务KMS(Key Management Service)的访问会被拒绝。
解决方案:如需正常使用KMS服务时,请确保您的阿里云账户不欠费。
KmsInDebtOverdue
Current user is indebted Overdue
问题原因:KMS服务欠费已逾期。
解决方案:如需正常使用KMS服务,请及时续费。
WORMConfigurationLocked
The WORM Configuration is locked
问题原因:合规保留策略锁定后试图删除策略。
解决方案:若保留策略已提交锁定,则不允许删除此策略,且无法缩短策略保护周期,仅可以延长保护周期。详情请参见
保留策略
。
错误原因:临时访问凭证已过期,过期后自动失效。
解决方案:请使用临时访问密钥(AccessKeyId和AccessKeySecret)向App服务器申请新的临时访问凭证。具体操作,请参见
获取临时访问凭证
。
The OSS Access Key Id contains non-acceptable characters, which accepts only alphanumeric
characters[0-9a-zA-Z] and several special characters[._=]
错误原因:输入了无效的AccessKey ID。
解决方法:请重新输入RAM用户或者阿里云账号的AccessKey ID。更多信息,请参见
创建AccessKey
。
SignatureDoesNotMatch
The request signature we calculated does not match the signature you provided
问题原因:签名错误。
解决方案:请参考以下步骤进行排查。
确认Endpoint格式是否填写正确。
以华东1(杭州)地域为例,正确的Endpoint格式为
http://oss-cn-hangzhou.aliyuncs.com
。关于其他地域对应的Endpoint填写方法,请参见
访问域名和数据中心
。
确认AccessKey ID与AccessKey Secret是否填写正确。
AccessKey ID与AccessKey Secret前后不能存在空格。
确认BucketName与ObjectKey符合命名要求。
BucketName的命名规则如下:
Bucket名称在OSS范围内必须全局唯一。
只能包括小写字母、数字和短划线(-)。
必须以小写字母或者数字开头和结尾。
长度为3~63个字符。
ObjectKey的命令规则如下:
使用UTF-8编码。
长度必须在1~1023字符之间。
不能以正斜线(/)或者反斜线(\)开头。
区分大小写。
AccessKeyIdAndSecurityTokenNotMatch
The OSS access key id and security token you provided does not match
问题原因:用户提供的AccessKey和临时访问凭证不匹配。
解决方案:请参见
使用STS临时访问凭证访问OSS
进行排查。
RequestTimeTooSkewed
The difference between the request time and the current time is too large
问题原因:请求发起的时间超过OSS服务器当前时间15分钟。
解决方案:请检查发送请求设备的系统时间,并根据时区调整到正确时间。
发送请求的机器或设备的系统时间,调整标准如下:
OSS的系统时间采用GMT时间,您的设备的系统时间需要调整到GMT时间,或与其相对应的时区时间。GMT是零时区的区时,即世界标准时间。
Windows系统查看时区的方法:单击
。
例如,时区栏的+08:00表示您的设备系统时区是东八区。
Linux或Unix系统查看时区的方法:执行
date -R
查看时间和时区。
下图中的+0800表示您的设备系统时区是东八区。
支持在多个地域使用OSS。每个地域都使用GMT时间,您发送请求的设备系统时间也是GMT时间。
The operation is not valid for the object's state
问题原因:下载归档类型Object时,以下两种情况会导致报错无效的Object状态。
未提交RestoreObject请求或者上一次提交RestoreObject已超时。
已提交RestoreObject请求,但数据的RestoreObject操作还没有完成。
解决方案:请参见
RestoreObject
进行排查。