

喜讯:国内、香港、海外云服务器租用特惠活动,2核/4G/10M仅需31元每月,点击抢购>>>
点击这里注册天翼云特邀VIP帐号,立即体验天翼云对象存储>>>
天翼云对象存储(经典版)STS临时授权示例
某企业X开发了一款移动应用(App),并使用对象存储(OOS)服务。App需要直连OOS上传或下载数据,但是App运行在用户自己的移动设备上,这些设备不受企业X的控制。企业X有如下要求:
1、直传数据:企业X不希望所有App都通过企业的服务端应用服务器(Application Server)来进行数据中转,而希望能够直连OOS上传或下载数据。
2、安全管控:企业X不希望将访问密钥(AccessKey)保存到移动设备中,因为移动设备是归属于用户控制,属于不可信的运行环境。
3、风险控制:企业X希望将风险控制到最小,每个App直连OOS时都必须拥有最小的访问权限且访问时效需要很短。
具体应对方案:
应用服务器在OOS上为每个APP创建一个IAM用户,并为每个IAM用户附加最小的访问权限(如调用STS接口、仅对自己目录下的资源有所有权,对于其他用户的目录无权限)。当移动应用(App)直连OOS上传或下载数据时,App需要向应用服务器申请访问凭证。应用服务器以该APP的IAM用户身份,调用STS API接口获取临时安全访问凭证,并将临时安全访问凭证传递给App,App使用临时安全访问凭证访问OOS。

1、OOS为应用服务器创建IAM用户并附加权限策略。
2、APP向应用服务器申请临时访问凭证。
3、应用服务器调用STS接口获取临时安全访问凭证。
4、应用服务器将获取的临时安全访问凭证传递给APP。
5、APP使用临时安全访问凭证访问OOS资源,进行数据直传。
具体策略参考:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowListAllBuckets",
"Effect": "Allow",
"Action": [
"oos:ListAllMyBucket"
],
"Resource": "*"
},
{
"Sid": "AllowListYourselfFolder",
"Effect": "Allow",
"Action": [
"oos:ListBucket"
],
"Resource": [
"arn:ctyun:oos::2hlo7dkswa22t:tBucket"
],
"Condition": {
"StringLike": {
"oos:prefix": [
"${ctyun:username}/*"
]
}
}
},
{
"Sid": "AllowControleYourselfFolder",
"Effect": "Allow",
"Action": [
"oos:GetObject",
"oos:ListMultipartUploadParts",
"oos:DeleteObject",
"oos:PutObject",
"oos:DeleteMultipleObjects",
"oos:AbortMultipartUpload"
],
"Resource": [
"arn:ctyun:oos::2hlo7dkswa22t:Bucket/${ctyun:username}/*"
]
},
{
"Sid": "AllowCallSTS",
"Effect": "Allow",
"Action": [
"iam:GetSessionToken"
],
"Resource": "*"
}
]
}注意:
由于生成的临时安全访问凭证是默认继承IAM用户的权限,所以我们在为IAM用户创建策略的时候,仅分配STS接口权限和所需操作的最小权限,不推荐分配CreateUser、CreateAccessKey、UpdateLoginProfile等权限,以防止临时安全访问凭证权限过大。
推荐:TOP云智能建站优惠活动,仅880元即可搭建一个后台管理五端合一的智能网站(PC网站、手机网站、百度智能小程序、微信小程序、支付宝小程序),独享百度搜索SEO优势资源,让你的网站不仅有颜值有排面,更有排名,可以实实在在为您带来效益,请点击进入TOP云智能建站>>>,或咨询在线客服了解详情。


湘公网安备43019002001857号
备案号:
客服1