OSS权限相关常见错误的排查方法

您所在的位置:网站首页 adobe182错误 OSS权限相关常见错误的排查方法

OSS权限相关常见错误的排查方法

2023-03-12 03:50| 来源: 网络整理| 查看: 265

请参见为RAM用户创建访问密钥,确认使用的AccessKeyID/AccessKeySecret是正确的。

权限检查流程

参考教程示例:使用RAM Policy控制OSS的访问权限,进行以下权限检查:

列出需要的权限和资源。 检查Action是否有需要的操作。 确认Resource是否为需要的操作对象。 确认Effect是Allow还是Deny。 确认Condition是否正确。 调试步骤

如果检查无法发现错误,进行如下调试:

如果有Condition,需先将其删除。 Effect中删除Deny。 Resource替换为"Resource": "*"。 Action替换为"Action": "oss:*"。 更多信息 “AccessDenied.The bucket you are attempting to…”错误

访问OSS出现的详细报错如下。

AccessDenied The bucket you are attempting to access must be addressed using the specified endpoint. Please send all future requests to this endpoint. 原因及解决方法

访问Bucket使用的Endpoint不正确,如果您需要了解Endpoint的详细信息,请参看OSS 基本概念。如果SDK异常抛出如下的异常,或返回如下错误。可参考备注中的内容找到正确的Endpoint。

AccessDenied The bucket you are attempting to access must be addressed using the specified endpoint. Please send all future requests to this endpoint. 56EA****3EE6 my-oss-bucket-*****.aliyuncs.com my-oss-bucket-*** oss-cn-****.aliyuncs.com

注:

其中Endpoint中的oss-cn-****.aliyuncs.com就是正确的Endpoint,请使用http://oss-cn-****.aliyuncs.com或https://oss-cn-****.aliyuncs.com作为Endpoint访问OSS。 如果错误中没有Endpoint,请登录OSS控制台,在Bucket管理中找到您访问的Bucket,进入Bucket概览页面。OSS域名中可以看到内网和外网域名。 外网域名是在公网*问OSS使用的域名,内网域名是指在阿里云内部访问的OSS使用的域名。比如在ECS*问OSS,可以使用内网域名。 Endpoint是域名去掉Bucket部分,加*问协议。例如上图中OSS的公网域名是oss-****.aliyuncs.com,它的公网Endpoint是http://oss-cn-****.aliyuncs.com。类似,内网Endpoint是http://oss-cn-****-internal.aliyuncs.com。 “AccessDenied.AccessDenied”错误

访问OSS出现的详细报错如下。

AccessDenied AccessDenied 原因及解决方法

说明访问OSS的用户没有当前操作的权限。请确认使用的AccessKeyID/AccessKeySecret是正确的,详情请参见为RAM用户创建访问密钥。请参见以下操作,确认是否已经赋予当前用户Bucket或Object的操作权限。

如果是匿名用户,请通过Bucket Policy授权匿名用户访问目标Bucket。详情请参见添加Bucket授权策略(Bucket Policy)。 如果使用的是子账号,请确认RAM用户是否拥有Object相关操作权限。根据使用场景设置不同访问权限的详情,请参见教程示例:使用RAM Policy控制OSS的访问权限。 如果是通过STS的授权访问,请参见STS临时授权访问OSS进行排查。 “InvalidAccessKeyId.The OSS Access Key Id…”错误

访问OSS出现的详细报错如下。

InvalidAccessKeyId The OSS Access Key Id you provided does not exist in our records. 原因及排查方法

原因可能是AccessKeyID禁用或不存在。可参如下排查方法进行排查处理。

登录阿里云控制台的AccessKey 管理。 确认访问OSS使用的AccessKeyID存在且处于启用状态。 如果您的AccessKeyID处于禁用状态,请开启。 如果您的AccessKeyID不存在请创建,并使用新的AccessKeyID访问OSS。 “SignatureDoesNotMatch.The request signature we calculated…”错误

访问OSS出现的详细报错如下。

SignatureDoesNotMatch The request signature we calculated does not match the signature you provided. Check your key and signing method. 排查步骤 请检查Endpoint前面没有Bucket,后面没有多余的“/”,前后没有多余的空格。 比如下面的Endpoint是不合法的。  http:// oss-cn-hangzhou.aliyuncs.com https:// oss-cn-hangzhou.aliyuncs.com http://my-bucket.oss-cn-hangzhou.aliyuncs.com http://oss-cn-hangzhou.aliyuncs.com/ 合法的Endpoint如下。 http://oss-cn-hangzhou.aliyuncs.com 请确认AccessKeyID与AccessKeySecret正确,确保AccessKeyID与AccessKeySecret前后都没有空格,特别是使用了复制粘贴的情况。 请确保BucketName与ObjectKey命名合法有效且符合要求。 Bucket命名规范:只能包括小写字母、数字和短横线(-),必须以小写字母或者数字开头,长度必须在3-63字节之间。 Object的命名规范:使用UTF-8编码,长度必须在1-1023字节之间,不能以“/”或者“\”字符开头。 如果是您自己实现的签名,请使用OSS SDK提供的签名方法。OSS的SDK提供了URL/Header签名的实现,详细请参看授权访问。 如果您的环境不适合使用SDK,需要自己实现签名,签名方法请参考发起请求概述,仔细检查每个签名字段。 如果您使用了代理,请检查代理服务器是否添加额外的Header。 相关文档 通过HTTP状态码或者OSS错误码排查 访问OSS时出现403状态码的排查方法 适用于 对象存储 OSS


【本文地址】


今日新闻


推荐新闻


    CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3