最近更新时间:2021-05-21 14:55:03
假设主账户A想把自己的存储空间example_bucket的部分权限授权给主账号B下的研发人员。
那么要完成上述的功能,需要配置两条策略:
原理图如下:
{
"Version":"2015-11-01",
"Statement": [
{
"Sid":"1",
"Effect":"Allow",
"Principal":{krn:ksc:iam::AccountB_ID:root},
"Action":[
"ks3:ListBucket",
"ks3:GetObject"
],
"Resource":["krn:ksc:ks3:::example_bucket",
"krn:ksc:ks3:::example_bucket/*"]
}
]
}
{
"Version": "2015-11-01",
"Statement": [
{
"Effect": "Allow",
"Action": [
"ks3:ListObject",
"ks3:GetObject"
],
"Resource":[
"krn:ksc:ks3:::example_bucket",
"krn:ksc:ks3:::example_bucket/*"
]
}
]
}
登录控制台,进入到B账户下的左侧导航栏下方的访问控制 > 子用户 页面,向rd_user授权第2步创建的策略。
使用rd_user这个IAM子用户的AK/SK,生成签名信息,构造对应的访问URL,就可以访问example_bucket的相关资源了。
注意 :
- 账户A还可以使用空间策略直接向账户B中的子用户授予权限。但是该子用户仍需要来自用户所属的。
- 父账户(账户B)的权限,该子用户必须同时拥有来自资源拥有者和父账户的权限,便能够访问资源。
原理图如下:
纯净模式