云存储Clouder认证:存储应用与数据管理—课时3:如何做好权限控制

本文涉及的产品
对象存储 OSS,20GB 3个月
对象存储OSS,敏感数据保护2.0 200GB 1年
对象存储 OSS,恶意文件检测 1000次 1年
简介: 云存储Clouder认证:存储应用与数据管理—课时3:如何做好权限控制

如何做好权限控制

小浩在梳理门户网站静态资源时,发现有些资源是仅内部员工可访问,有些资源是特定的注册客户可访问,还有些资源是匿名客户也可以访问。针对不同场景、不同用户,小浩该如何规划企业门户网站静态资源的权限控制呢?

权限控制类型

OSS有以下四种类型的访问权限控制。

类型 说明 适用场景
RAM Policy RAM(Resource Access Management)是阿里云提供的资源访问控制服务。RAM Policy是基于用户的授权策略。通过设置RAM Policy,您可以集中管理您的用户(比如员工、系统或应用程序),以及控制用户可以访问您名下哪些资源的权限,比如限制您的用户只拥有对某一个Bucket的读权限。
  • 对同一账号下的不同RAM用户授予相同权限。
  • 对所有OSS资源或者多个Bucket配置相同权限。
  • 配置OSS服务级别的权限,例如列举某一账号下的所有Bucket。
  • 临时授权访问OSS时,限制临时访问密钥的权限。
Bucket Policy Bucket Policy是基于资源的授权策略。相比于RAM Policy,Bucket Policy操作简单,支持在控制台直接进行图形化配置,并且Bucket拥有者直接可以进行访问授权,无需具备RAM操作权限。Bucket Policy支持向其他账号的RAM用户授予访问权限,以及向匿名用户授予带特定IP条件限制的访问权限。
  • 对同一账号下的不同RAM用户授予不同权限。
  • 要进行跨账号或对匿名用户授权。
Bucket ACL 您可以在创建Bucket时设置读写权限ACL,也可以在Bucket创建后的任意时间内根据自己的业务需求随时修改ACL,该操作只有Bucket的拥有者可以执行。Bucket ACL分为public-read-write(公共读写)、public-read(公共读)和private(私有)三种。 对单个Bucket内的所有Object设置相同的访问权限。
Object ACL 除Bucket级别ACL以外,OSS还提供了Object级别的ACL。您可以在上传Object时设置相应的ACL,也可以在Object上传后的任意时间内根据自己的业务需求随时修改ACL。Object ACL分为继承Bucket、public-read-write(公共读写)、public-read(公共读)和private(私有)四种。 对单个Object单独授权。例如,已通过RAM Policy或者Bucket Policy将Bucket内的所有Object或者与指定Prefix匹配的Object的访问权限设置为私有,但是考虑到您需要将其中某个Object开放给所有互联网匿名用户访问,则选择Object ACL,并将ACL设置为public-read。

 

设置Bucket ACL权限

针对门户网站的场景,小浩对企业门户网站需要存放的文件,进行了访问权限类型的梳理:

文件类型 文件权限设置 实现方式
企业门户网站静态资源(网站静态页面、图片、视频、网站下载资源等) 企业门户网站部分资源,匿名客户公共读权限。 OSS控制台
企业门户网站部分资源,仅注册客户公共读权限。 OSS控制台
企业门户网站管理员可读可写。 OSS控制台

小浩首先需要创建一个Bucket用来存放文件查看下表权限类型说明后,小浩希望设置Bucket ACL权限为私有

权限值

权限描述
公共读写

公共读写:任何人(包括匿名访问者)都可以对该Bucket内文件进行读写操作。

警告 互联网上任何用户都可以对该Bucket内的文件进行访问,并且向该Bucket写入数据。这有可能造成您数据的外泄以及费用激增,若被人恶意写入违法信息还可能会侵害您的合法权益。除特殊场景外,不建议您配置公共读写权限。

公共读

公共读:只有该Bucket的拥有者可以对该Bucket内的文件进行写操作,任何人(包括匿名访问者)都可以对该Bucket中的文件进行读操作。

警告 互联网上任何用户都可以对该Bucket内文件进行访问,这有可能造成您数据的外泄以及费用激增,请谨慎操作。

私有 私有:只有Bucket的拥有者可以对该Bucket内的文件进行读写操作,其他人无法访问该Bucket内的文件。
  • 配置Bucket ACL为私有支持以下两种模式:
  • 创建时配置Bucket ACL步骤如下:
  1. 登录OSS管理控制台
  2. 单击Bucket 列表,然后单击目标Bucket名称。
  3. 在左侧导航栏,单击Bucket列表,然后单击创建Bucket。
  4. 在创建Bucket面板,配置读写权限为私有即可。(默认Bucket读写权限为私有)
  • 创建后修改Bucket ACL的步骤如下:
  1. 登录OSS管理控制台
  2. 单击Bucket列表,然后单击目标Bucket名称。
  3. 在左侧导航栏,选择权限控制 > 读写权限。
  4. 在读写权限页面,单击设置,按实际需求修改Bucket ACL。
  5. 单击保存 。

此时小浩内心有疑问,Bucket ACL已经设置为私有权限了,企业门户网站静态资源要求的是公共读权限,该如何处理呢?

  • 首先我们回顾一下Bucket和Object的关系。在上传数据(例如文档、图片、音视频等)到OSS之前,需要创建一个存储空间(Bucket),然后将文件(Object)上传到该Bucket中。

  • Bucket已经设置为私有,那Object是不是只能设置为私有?答案是否定的,上传Object时可以选择继承Bucket ACL或指定Object ACL。

设置Object ACL权限

于是,小浩上传网站匿名可访问的静态资源到Bucket时,需要设置Object ACL权限为公共读。

  • 配置Object ACL为公共读支持以下两种方式:
  • 上传Object时设置Object ACL为公共读。
  1. 登录OSS管理控制台
  2. 单击Bucket 列表,然后单击目标Bucket名称。
  3. 在左侧导航栏,选择文件管理 > 文件列表
  4. 文件列表页面,单击上传文件
  5. 上传文件面板,配置文件ACL公共读即可。
  • 上传Object到Bucket后调整Object ACL。
  1. 登录OSS管理控制台
  2. 单击Bucket列表,然后单击目标Bucket名称。
  3. 在左侧导航栏,选择文件管理 > 文件列表
  4. 设置Object ACL。
    1. 进入设置读写权限面板。您可以通过以下两种方式进入设置读写权限面板。
      • 在目标文件右侧的操作栏下,单击详情,然后单击设置读写权限
      • 在目标文件右侧的操作栏下,选择> 设置读写权限
    1. 设置读写权限面板,按实际需求设置读写权限。

   5. 单击确定

 

 

设置Bucket Policy

小浩已经将存放文件的Bucket ACL设置为私有权限,如果要授权他人访问或使用自己的OSS资源,可以通过多种权限控制策略向他人授予资源的特定权限。

  • 企业门户网站注册客户,需要有对部分视频有读的权限。可以通过Bucket Policy指定用户设置为只读权限。假设该视频资源存放在OSS Bucket的video目录下,如下图所示,配置步骤如下:

  • 使用OSS控制台,对指定用户设置为只读权限。满足企业门户网站部分资源设置为,仅注册客户为公共读权限。
  1. 登录OSS管理控制台
  2. 单击Bucket 列表,然后单击目标Bucket名称。
  3. 在左侧导航栏,选择权限控制>Bucket 授权策略
  4. Bucket 授权策略页面的按图形策略添加页签,单击新增授权
  5. 在新增授权面板,按以下说明配置各项参数,然后单击确定
    • 授权资源
      • 指定资源:指定目录为 video/*
    • 授权用户
      • 指定账号:指定“用户A”的RAM子账号
    • 授权操作
      • 只读(不包含ListObject操作)

   6. 单击确定

 

  • 企业门户网站匿名用户,需要有对部分视频进行播放的权限。可以通过Bucket Policy对匿名用户设置为只读权限。假设该视频资源存放在OSS Bucket的guest目录下。如下图所示,配置步骤如下:

  • 使用OSS控制台,完成对匿名用户设置为只读权限,满足所有用户可以播放视频的需求。
  1. 登录OSS管理控制台
  2. 单击Bucket 列表,然后单击目标Bucket名称。
  3. 在左侧导航栏,选择权限控制>Bucket 授权策略
  4. Bucket 授权策略页面的按图形策略添加页签,单击新增授权
  5. 在新增授权面板,按以下说明配置各项参数,然后单击确定
    • 授权资源
      • 指定资源:指定目录为 guest/*
    • 授权用户
      • 所有账号(*)
    • 授权操作
      • 只读(不包含ListObject操作)

   6. 单击确定

 

设置RAM Policy

在日常运维过程中,考虑到IT团队内部成员需要登陆到OSS控制台,查看Bucket中的视频、监控指标等信息。为了安全考虑,小浩创建RAM子账号为“opsuser”,并授权“opsuser”子账号具有OSS 产品只读访问权限。

  • 使用RAM控制台,完成RAM Policy的配置。小浩的同事即可通过子账号登陆阿里云,查看Bucket中的视频信息。
  1. 登录RAM管理控制台
  2. 左侧导航栏,选择身份管理>用户>创建用户
    • 填写登录名称
    • 访问方式,勾选控制台访问
    • 点击确定,完成子账号创建。

    3. 在左侧导航栏,选择身份管理>用户,选择上一步创建的用户,单击添加权限。

    • 授权范围,选择整个云账号
    • 授权主体,选择选择上一步创建的用户。
    • 选择权限,单击系统策略,单击AliyunOSSReadOnlyAccess。
    • 点击确定,完成子账号授权。





练习实验:基于对象存储OSS实现企业门户网站托管

https://developer.aliyun.com/adc/scenario/exp/dd9b0b7a9419465ea92e702f3ca0a10e

相关实践学习
通义万相文本绘图与人像美化
本解决方案展示了如何利用自研的通义万相AIGC技术在Web服务中实现先进的图像生成。
相关文章
|
3月前
|
人工智能 关系型数据库 API
快速部署Dify on DMS,一站式开发智能体应用
Dify 是一款开源的 Agent 应用开发平台,结合后端即服务与 Agentic 工作流,支持快速构建生产级 AI 应用。无论技术背景如何,用户都能轻松参与 AI 项目与数据管理,开发企业级应用。
Java 大视界 -- 基于 Java 的大数据分布式存储在视频监控数据管理中的应用优化(170)
本文围绕基于 Java 的大数据分布式存储在视频监控数据管理中的应用展开,分析管理现状与挑战,阐述技术应用,结合案例和代码给出实操方案。
|
存储 安全 数据管理
探索区块链技术在医疗数据管理中的应用
区块链技术,一种最初为比特币而创建的分布式账本技术,已经逐渐渗透到各个行业,其中包括医疗领域。本文将深入探讨区块链技术如何革新医疗数据管理系统,提高数据安全性和互操作性,同时降低运营成本。我们将从区块链的基本原理出发,分析其在保护患者隐私、实现数据共享及优化病历管理方面的具体应用案例和潜在挑战。最后,通过实际案例和未来展望,揭示区块链技术在医疗数据管理中的巨大潜力和发展前景。
|
9月前
|
存储 安全 数据管理
区块链在医疗数据管理中的应用:安全与隐私的新纪元
区块链在医疗数据管理中的应用:安全与隐私的新纪元
654 16
|
12月前
|
SQL 存储 数据管理
Hadoop-15-Hive 元数据管理与存储 Metadata 内嵌模式 本地模式 远程模式 集群规划配置 启动服务 3节点云服务器实测
Hadoop-15-Hive 元数据管理与存储 Metadata 内嵌模式 本地模式 远程模式 集群规划配置 启动服务 3节点云服务器实测
171 2
|
缓存 负载均衡 数据管理
深入探索微服务架构的核心要素与实践策略在当今软件开发领域,微服务架构以其独特的优势和灵活性,已成为众多企业和开发者的首选。本文将深入探讨微服务架构的核心要素,包括服务拆分、通信机制、数据管理等,并结合实际案例分析其在不同场景下的应用策略,旨在为读者提供一套全面、深入的微服务架构实践指南。**
**微服务架构作为软件开发领域的热门话题,正引领着一场技术革新。本文从微服务架构的核心要素出发,详细阐述了服务拆分的原则与方法、通信机制的选择与优化、数据管理的策略与挑战等内容。同时,结合具体案例,分析了微服务架构在不同场景下的应用策略,为读者提供了实用的指导和建议。
|
13天前
|
数据采集 存储 安全
数据治理≠数据管理!90%的企业都搞错了重点!
在数字化转型中,数据不一致、质量差、安全隐患等问题困扰企业。许多组织跳过基础的数据管理,直接进行数据治理,导致方案难以落地。数据管理涵盖数据生命周期中的采集、存储、处理等关键环节,决定了数据是否可用、可靠。本文详解数据管理的四大核心模块——数据质量、元数据、主数据与数据安全,并提供构建数据管理体系的四个阶段:评估现状、确定优先级、建立基础能力与持续改进,助力企业夯实数据基础,推动治理落地。
|
5月前
|
存储 数据管理 数据格式
数据治理 vs. 数据管理:别再傻傻分不清!
数据治理 vs. 数据管理:别再傻傻分不清!
256 10
|
27天前
|
数据采集 存储 SQL
数据管理四部曲:元数据管理、数据整合、数据治理、数据质量管控
老张带你搞定企业数据管理难题!数据找不到、看不懂、用不好?关键在于打好元数据管理、数据整合、数据治理和数据质量管控四大基础。四部曲环环相扣,助你打通数据孤岛,提升数据价值,实现精准决策与业务增长。
数据管理四部曲:元数据管理、数据整合、数据治理、数据质量管控