如何通过RAM对OSS进行权限管理

您所在的位置:网站首页 license权限控制 如何通过RAM对OSS进行权限管理

如何通过RAM对OSS进行权限管理

2023-12-25 06:10| 来源: 网络整理| 查看: 265

示例4:OSS目录级别的授权。

假设用于存放照片的存储空间名为myphotos,该存储空间下有一些目录,代表照片的拍摄地,每个拍摄地目录下又有年份子目录。

myphotos[Bucket] ├── beijing │ ├── 2014 │ └── 2015 ├── hangzhou │ ├── 2013 │ ├── 2014 │ └── 2015 //授予该目录只读权限 └── qingdao ├── 2014 └── 2015

若要授权RAM用户访问myphotos/hangzhou/2015/目录的只读权限。目录级别的授权属于授权的高级功能,根据使用场景不同,授权策略的复杂程度也不同,以下几种场景可供参考。

场景1:授予RAM用户读取文件内容的权限,不需要列出文件的权限。

RAM用户知道文件的完整路径,可以使用完整的文件路径直接去读取文件内容,通常会将这样的权限授予应用程序。

{ "Version": "1", "Statement": [ { "Effect": "Allow", "Action": [ "oss:GetObject" ], "Resource": [ "acs:oss:*:*:myphotos/hangzhou/2015/*" ] } ] } 场景2:授权RAM用户使用OSS命令行工具访问目录myphotos/hangzhou/2015/并列出目录中文件的权限。

RAM用户不清楚目录中有哪些文件,可以使用OSS命令行工具或API直接获取目录信息,通常会将这样的权限授予软件开发者。

此场景需要新增ListObjects的权限。

{ "Version": "1", "Statement": [ { "Effect": "Allow", "Action": [ "oss:GetObject" ], "Resource": [ "acs:oss:*:*:myphotos/hangzhou/2015/*" ] }, { "Effect": "Allow", "Action": [ "oss:ListObjects" ], "Resource": [ "acs:oss:*:*:myphotos" ], "Condition":{ "StringLike":{ "oss:Prefix":"hangzhou/2015/*" } } } ] } 场景3: 授予RAM用户使用OSS控制台访问目录。

RAM用户使用可视化的OSS客户端访问目录myphotos/hangzhou/2015/,可视化的客户端类似Windows文件管理器,RAM用户可以从根目录开始,一层一层地进入要访问的目录,此场景是最易用的场景。

此场景需要新增以下权限:

列出所有Bucket的权限。 列出myphotos下目录的权限。 列出myphotos/hangzhou下的目录的权限。 { "Version": "1", "Statement": [ { "Effect": "Allow", "Action": [ "oss:ListBuckets", "oss:GetBucketStat", "oss:GetBucketInfo", "oss:GetBucketTagging", "oss:GetBucketAcl" ], "Resource": [ "acs:oss:*:*:*" ] }, { "Effect": "Allow", "Action": [ "oss:GetObject", "oss:GetObjectAcl" ], "Resource": [ "acs:oss:*:*:myphotos/hangzhou/2015/*" ] }, { "Effect": "Allow", "Action": [ "oss:ListObjects" ], "Resource": [ "acs:oss:*:*:myphotos" ], "Condition": { "StringLike": { "oss:Delimiter": "/", "oss:Prefix": [ "", "hangzhou/", "hangzhou/2015/*" ] } } } ] }


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3