【最佳实践】授权子账号进行OSS图片样式设置

本文涉及的产品
对象存储 OSS,20GB 3个月
日志服务 SLS,月写入数据量 50GB 1个月
对象存储 OSS,恶意文件检测 1000次 1年
简介: 1.引子:如何授权子账号在控制台针对指定的Bucket设置图片样式呢?【使用场景】:某企业内部有众多Bucket,并且不同的Bucket分别指定了Bucket的管理员。目前Bucket A的管理员期望能够针对Bucket A中的图片通过设置图片样式的方式进行通过管理。

1.引子:如何授权子账号在控制台针对指定的Bucket设置图片样式呢?

【使用场景】:某企业内部有众多Bucket,并且不同的Bucket分别指定了Bucket的管理员。目前Bucket A的管理员期望能够针对Bucket A中的图片通过设置图片样式的方式进行通过管理。

目前可以通过授权子账号“AliyunOSSFullAccess”权限的方式在控制台进行图片样式设置。但是赋予子账号“AliyunOSSFullAccess”后,子账号的操作权限过大。该账号能够操作管理所有的Bucket。在企业的实际使用过程中,每个Bucket都是由明确的使用用途,基本不可能授予每个子账号管理所有Bucket的权限。

因此,我们考虑是不是可以通过RAM Policy的方式针对指定的子账号授予指定Bucket的操作管理权限。从而达到如上的预期?

2.配置操作

# 2.1准备工作:

  • 创建1个子账号;(示例中子账号tmp-user)
  • 创建1个Bucket;(示例中Bucket名称test-beijing-2019)
  • 创建RAM Policy;(示例中的RAM Policy名称 BucketStylePolicy)

# 2.2 创建RAM Policy:

由于是在请求图片时带上了图片样式处理操作,例如“http://image-demo.oss-cn-hangzhou.aliyuncs.com/example.jpg?x-oss-process=image/resize,h_100”。 因此RAM Policy需要包含2部分的授权:

  • Get Object以及List Objects相关授权;
  • 图片样式处理相关授权;

    其中图片样式相关API操作如下.PS:详细图片样式相关API操作:图片样式API接口
Put Style  //创建图片样式
List Style //获取某个Bucket下所有图片样式信息
Get Style  //获取某个样式(Style)的属性信息,包括样式名称、内容,以及创建和最后修改时间
Delete Style //删除某个图片样式

如下是授予子账号创建、修改、删除图片样式的相关RAM Policy授权:

{
  "Version": "1",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "oss:GetObject",
        "oss:PutObject",
        "oss:GetObjectAcl",
        "oss:PutObjectAcl",
        "oss:ListObjects",
        "oss:GetBucketAcl",
        "oss:Putstyle",
        "oss:Liststyle",
        "oss:Getstyle",
        "oss:Deletestyle"
      ],
      "Resource": [
        "acs:oss:*:*:test-beijing-2019",
         "acs:oss:*:*:test-beijing-2019/*"
      ],
      "Condition": {}
    }
  ]
}

# 2.3子账号登录控制台进行验证:

1.使用子账号(tmp-user)登录控制台,并且创建style:

image

2.在请求中使用图片样式;
image

相关实践学习
借助OSS搭建在线教育视频课程分享网站
本教程介绍如何基于云服务器ECS和对象存储OSS,搭建一个在线教育视频课程分享网站。
相关文章
|
6月前
|
DataWorks 安全 关系型数据库
DataWorks产品使用合集之同步数据到OSS时,文件的切分单位如何设置
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
3月前
|
负载均衡 Java 对象存储
负载均衡策略:Spring Cloud与Netflix OSS的最佳实践
负载均衡策略:Spring Cloud与Netflix OSS的最佳实践
57 2
|
5月前
|
存储 JSON 自然语言处理
OSS数据源一站式RAG最佳实践
本文介绍了如何使用OpenSearch LLM智能问答版通过OSS数据源一站式构建RAG系统。
7188 11
|
4月前
|
存储 运维 Serverless
函数计算产品使用问题之OSS触发器是否可以只设置文件前缀
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
|
6月前
|
分布式计算 DataWorks API
DataWorks操作报错合集之在将ODPS空间设置成保护模式后,导出到OSS的任务出现了权限问题,该怎么解决
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
181 1
|
6月前
|
Web App开发 前端开发 安全
设置跨域规则后调用OSS时仍然报“No ‘Access-Control-Allow-Origin‘”的错误
设置跨域规则后调用OSS时仍然报“No ‘Access-Control-Allow-Origin‘”的错误
170 0
|
6月前
|
机器学习/深度学习 人工智能 分布式计算
人工智能平台PAI产品使用合集之在easy_rec中,将model_dir设置为oss地址时,oss相关配置需要加载在环境中,有完整的示例吗
阿里云人工智能平台PAI是一个功能强大、易于使用的AI开发平台,旨在降低AI开发门槛,加速创新,助力企业和开发者高效构建、部署和管理人工智能应用。其中包含了一系列相互协同的产品与服务,共同构成一个完整的人工智能开发与应用生态系统。以下是对PAI产品使用合集的概述,涵盖数据处理、模型开发、训练加速、模型部署及管理等多个环节。
|
5月前
|
机器学习/深度学习 人工智能 专有云
人工智能平台PAI使用问题之怎么将DLC的数据写入到另一个阿里云主账号的OSS中
阿里云人工智能平台PAI是一个功能强大、易于使用的AI开发平台,旨在降低AI开发门槛,加速创新,助力企业和开发者高效构建、部署和管理人工智能应用。其中包含了一系列相互协同的产品与服务,共同构成一个完整的人工智能开发与应用生态系统。以下是对PAI产品使用合集的概述,涵盖数据处理、模型开发、训练加速、模型部署及管理等多个环节。
|
1月前
|
分布式计算 Java 开发工具
阿里云MaxCompute-XGBoost on Spark 极限梯度提升算法的分布式训练与模型持久化oss的实现与代码浅析
本文介绍了XGBoost在MaxCompute+OSS架构下模型持久化遇到的问题及其解决方案。首先简要介绍了XGBoost的特点和应用场景,随后详细描述了客户在将XGBoost on Spark任务从HDFS迁移到OSS时遇到的异常情况。通过分析异常堆栈和源代码,发现使用的`nativeBooster.saveModel`方法不支持OSS路径,而使用`write.overwrite().save`方法则能成功保存模型。最后提供了完整的Scala代码示例、Maven配置和提交命令,帮助用户顺利迁移模型存储路径。
|
4月前
|
存储 机器学习/深度学习 弹性计算
阿里云EMR数据湖文件系统问题之OSS-HDFS全托管服务的问题如何解决
阿里云EMR数据湖文件系统问题之OSS-HDFS全托管服务的问题如何解决

相关产品

  • 对象存储