华为云对象存储OBS配置双端固定_云淘科技
配置示例一:只配置VPC终端节点策略
场景描述:
只允许VPC1内的服务器下载账号A的桶mybucket中的对象。
其中VPC1的ID为:4dad1f75-0361-4aa4-ac75-1ffdda3a0fec,账号A的账号ID为:783fc6652cf246c096ea836694f71855。
配置方法:
配置VPC1的终端节点策略如下:
入口:服务列表 > VPC终端节点 > 单击对应VPC终端节点ID > 策略 > 编辑
[ { "Action": [ "obs:object:GetObject" ], "Resource": [ "obs:*:783fc6652cf246c096ea836694f71855:object:mybucket/*" ], "Effect": "Allow" } ]
配置示例二:只配置VPC终端节点策略,禁止指定资源下载
场景描述:
除了账号A的桶mybucket中的对象外,允许VPC1内的服务器下载账号A名下所有其他桶的桶内对象。
其中账号A的账号ID为:783fc6652cf246c096ea836694f71855。
配置方法:
配置VPC1的终端节点策略如下:
入口:服务列表 > VPC终端节点 > 单击对应VPC终端节点ID > 策略 > 编辑
[ { "Action": [ "obs:object:GetObject" ], "Resource": [ "obs:*:783fc6652cf246c096ea836694f71855:object:*/*" ], "Effect": "Allow" }, { "Action": [ "obs:object:GetObject" ], "Resource": [ "obs:*:783fc6652cf246c096ea836694f71855:object:mybucket/*" ], "Effect": "Deny" } ]
配置示例三:同时配置VPC终端节点策略与桶策略
场景描述:
只允许VPC1内的服务器上传/下载账号A的桶mybucket中的对象,并且只允许桶mybucket中的对象被VPC1内的服务器上传/下载。
其中VPC1的ID为:4dad1f75-0361-4aa4-ac75-1ffdda3a0fec,账号A的账号ID为:783fc6652cf246c096ea836694f71855。
配置方法:
配置VPC1的终端节点策略如下:
入口:服务列表 > VPC终端节点 > 单击对应VPC终端节点ID > 策略 > 编辑
[ { "Action": [ "obs:object:GetObject", "obs:object:PutObject" ], "Resource": [ "obs:*:783fc6652cf246c096ea836694f71855:object:mybucket/*" ], "Effect": "Allow" } ]
配置桶mybucket的桶策略如下:
配置方法请参见自定义创建桶策略(JSON视图)。
其中statementId可自定义,domainId和userId需要设置为允许上传下载的账号ID和用户ID。相关说明请参见桶策略。
{ "Statement": [ { "Sid": "statementId", "Effect": "Allow", "Principal": { "ID": ["domain/domainId:user/userId"] }, "Action": ["GetObject", "PutObject"], "Resource": ["mybucket/*"], "Condition": { "StringEquals": { "SourceVpc": ["4dad1f75-0361-4aa4-ac75-1ffdda3a0fec"] } } } ] }
设置上述桶策略后,被授权的IAM用户可以正常通过SDK或API进行上传下载操作。如果希望在控制台或OBS Browser+上进行上传下载,还需要在IAM权限中额外配置obs:bucket:ListAllMyBuckets和obs:bucket:ListBucket权限,否则登录控制台和OBS Browser+时会报错,无法看到桶和桶内对象。
配置示例四:同时配置VPC终端节点策略与桶策略后,再授权其他云服务访问桶
场景描述:
当同时设置了VPC1的终端节点策略与账号A的桶mybucket的桶策略后,由于双端固定的限制,其它云服务包括OBS就无法访问桶mybucket。若想要授权其它云服务能够访问桶mybucket,可以通过委托授权的方式。
其中VPC1的ID为:4dad1f75-0361-4aa4-ac75-1ffdda3a0fec,账号A的账号ID为:783fc6652cf246c096ea836694f71855。
配置方法:
配置VPC1的终端节点策略如下:
只允许VPC1内的服务器上传/下载账号账号A的桶mybucket中的对象。
入口:服务列表 > VPC终端节点 > 单击对应VPC终端节点ID > 策略 > 编辑
[ { "Action": [ "obs:object:GetObject", "obs:object:PutObject" ], "Resource": [ "obs:*:783fc6652cf246c096ea836694f71855:object:mybucket/*" ], "Effect": "Allow" } ]
创建IAM委托,委托其它云服务访问桶mybucket。例如,委托OBS,绑定系统策略OBS FullAccess,也可以创建自定义策略并绑定该委托。
配置桶mybucket的桶策略如下:
只允许桶mybucket中的对象被VPC1内的服务器或者委托名为testAgencyName所对应授权的云服务访问桶mybucket中的对象。其中委托名以步骤二实际创建的IAM委托名称为准。
{ "Statement": [ { "Effect": "Allow", "Principal": {"ID": ["*"]}, "Action": ["*"], "Resource": ["mybucket/*"], "Condition": { "StringEquals": { "SourceVpc": ["4dad1f75-0361-4aa4-ac75-1ffdda3a0fec"] } } }, { "Effect": "Allow", "Principal": {"ID": ["*"]}, "Action": ["*"], "Resource": ["mybucket/*"], "Condition": { "StringEquals": { "ServiceAgency": ["testAgencyName"] } } } ] }
同时,桶策略也可按如下配置达到同样的效果:
{ "Statement": [ { "Effect": "Deny", "Principal": {"ID": ["*"]}, "Action": ["*"], "Resource": ["mybucket/*"], "Condition": { "StringNotEquals": { "SourceVpc": ["4dad1f75-0361-4aa4-ac75-1ffdda3a0fec"], "ServiceAgency": ["testAgencyName"] } } } ] }
父主题: 数据安全
同意关联代理商云淘科技,购买华为云产品更优惠(QQ 78315851)
内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家