使用阿里云STS临时账户进行OSS文件操作权限问题

今天一同事在用临时账户对上传到oss服务器的文件进行crc64校验的时候用ossClient对象获取ossObject的时候

 

 

提示Access denied by authorizer's policy.

 

 

看返回的提示信息应该是权限的问题,同事那边的临时账户是调用我这边的接口来获取,所以我猜想问题应该是在我这边,这个问题通过阿里云提供的文档来看是临时用户没有权限导致的

 

 

由于本人刚接触这一块,代码又是以前的人写的,所以一开始没整明白。一边看文档一边向阿里提交了工单协助处理,文档有说到临时账户是基于子账户的权限的,于是登录子账户控制台发现子账户的权限都是有的。这时候阿里回复了我的工单,工单说到是我临时账户policy配置的问题,让我把policy配置成最高操作权限,于是我按它说的给临时账户的policy设置了最大权限,然后重新发布服务,让同事再重试一次,这个时候没有报前面说的错误了,但出现了新的错误:The parameter policy has not passed grammer check.

 

 

意思大概就是policy的语法错误,于是检查policy的设置。因为以前有配置要用的权限(权限最小化),所以干脆不管最大权限语法对不对,我直接在原来的policy的action中加了个“getObject”权限,然后又重新打包上传到服务器,重启服务,让同事又重试了一下,看着shell窗口日志一条条打印出来,最后看到成功两字,中间也没报任何异常,心里瞬间松了口气,调了一个下午加晚上终于调通了,这就跟便秘蹲了大半个小时突然一股丹田之气打通任督二脉,瞬间潮起潮落一样,一个字,爽!

 另外,在写policy的时候建议大家先在RAM Policy Editor上面写,这个在线编辑器提供了对policy语法的验证。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值