更新时间:2022-07-06 GMT+08:00

给IAM用户配置了桶读写权限,登录控制台仍然提示拒绝访问,请检查相应权限

原因

通过桶策略给IAM用户配置桶的读写权限后,实际上授予的权限如下:

  • GetObject:下载对象
  • GetObjectVersion:下载多版本对象
  • PutObject:上传对象
  • DeleteObject:删除对象
  • DeleteObjectVersion:删除多版本对象

上述每一个权限对应一个OBS功能接口,IAM用户使用API或SDK可以正常调用这些接口。但是通过控制台或者客户端工具(OBS Browser+)登录时,加载桶列表时会调用获取桶列表(ListAllMyBuckets)等接口,加载对象列表时会调用列举桶内对象(ListBucket)等接口,其他页面也会调用其他的OBS接口。而授予的读写权限中并没有包含这些操作的权限,所以会提示“拒绝访问,请检查响应权限”,或者“不允许在请求的资源上执行此操作”。

解决方法

即使界面出现了权限不足的提示,也并不影响已有的权限生效。通过API或SDK可以正常调用相关接口。

对于控制台或客户端工具(OBS Browser+)而言,需要在IAM中配置OBS自定义策略,授予更多的OBS权限,并将IAM用户加入到对应的用户组中。