186
云计算
负载均衡
产品简介
产品价格
快速入门
用户指南
实践操作
常见问题
购买指南
云服务器
产品简介
计费规则
购买指导
控制台使用指南
常见问题
云数据库
产品简介
计费规则
购买指导
快速入门
连接实例
控制台使用指南
对象存储
产品简介
控制台使用指南
程序员百科
Python
天翼云对象存储(经典版)STS临时授权示例

产品推荐:

1、安全稳定的云服务器租用,2核/2G/5M仅37元,点击抢购>>>

2、高防物理服务器20核/16G/50M/200G防御仅350元,点击抢购>>>

3、百度智能建站(五合一网站)仅880元/年,点击抢购>>> 模板建站(PC+手机站)仅480元/年,点击抢购>>>



点击这里注册天翼云特邀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等权限,以防止临时安全访问凭证权限过大。


这条帮助是否解决了您的问题? 已解决 未解决

提交成功!非常感谢您的反馈,我们会继续努力做到更好! 很抱歉未能解决您的疑问。我们已收到您的反馈意见,同时会及时作出反馈处理!