接入点(Access Point)用于简化大规模共享数据集的数据访问权限控制管理的场景。本文介绍如何创建接入点。
前提条件
-
Bucket所属地域必须为:华东1(杭州)、华东2(上海)、华北1(青岛)、华北2(北京)、华北 3(张家口)、华北5(呼和浩特)、华北6(乌兰察布)、华南1(深圳)、华南2(河源)、华南3(广州)、西南1(成都)、中国香港、美国(硅谷)、美国(弗吉尼亚)、日本(东京)、韩国(首尔)、新加坡、澳大利亚(悉尼)、马来西亚(吉隆坡)、印度尼西亚(雅加达)、菲律宾(马尼拉)、泰国(曼谷)、印度(孟买)、德国(法兰克福)、英国(伦敦)。
-
如果希望使用网络来源为VPC的接入点,您需要提前创建VPC。具体操作,请参见创建和管理专有网络。
-
RAM用户必须拥有以下权限:
oss:CreateAccessPoint
、oss:GetAccessPoint
、oss:DeleteAccessPoint
、oss:ListAccessPoints
、oss:PutAccessPointPolicy
、oss:GetAccessPointPolicy
、oss:DeleteAccessPointPolicy
、oss:PutBucketPolicy
、oss:GetBucketPolicy
、oss:DeleteBucketPolicy
。具体操作,请参见为RAM用户授权自定义的权限策略。
场景说明
A作为公司的阿里云账号owner(其账户UID为137918634953****),其公司需针对统一采集的数据进行大数据分析与管理,统一采集的数据存放在存储空间examplebucket中。examplebucket的使用方涉及10个不同的业务部门,其中:
-
部门仅允许对examplebucket/dir1/下的文件进行读取,不可写入,且允许通过互联网进行访问。
-
部门仅允许对examplebucket下的目录进行读取和写入,且允许通过互联网进行访问。
-
部门仅对examplebucket/dir2/下的文件进行读取和写入,且限制只能通过指定的VPC ID进行访问。
针对以上场景示例,该公司的阿里云账号owner可以通过接入点功能完成以上需求。
该公司的阿里云账号owner可以为部门、部门以及部门分别创建一个接入点,然后为接入点委派权限。权限委派完成后,不同部门可以通过不同的接入点访问OSS资源。
使用OSS控制台
-
配置接入点基础信息。
-
登录OSS管理控制台。
-
在左侧导航栏,单击接入点列表。
-
在接入点列表页面,单击创建接入点。
-
在创建接入点对话框,按说明完成以下配置项,然后单击下一步。
配置项
说明
示例值
接入点名称
为接入点命名。接入点命名规范说明如下:
-
接入点名称在当前阿里云账号单个地域内唯一。
-
不允许以-ossalias结尾。
-
只能包括小写字母、数字和短划线(-),不能以短横线开头或结尾。
-
命名长度为3~19个字符。
-
部门:ap-01
-
部门:ap-02
-
部门:ap-03
Bucket
下拉选择需要使用接入点的Bucket。单个Bucket支持创建100个接入点。
examplebucket
网络来源
选择接入点的网络来源。
-
互联网:同时支持通过外网或内网访问Bucket内的资源。
-
VPC:限制仅支持通过指定的VPC ID访问Bucket内的资源。选择该选项后,您需要手动输入VPC ID。
重要
如果接入点的网络来源设置为VPC,则不支持通过控制台访问接入点关联的Bucket内的资源,您可以通过SDK以内网Endpoint的形式进行访问。
-
部门:互联网
-
部门:互联网
-
部门:VPC
-
-
-
配置接入点策略。
重要
在接入点内配置的访问策略仅作用于从该接入点发出的请求,接入点配置的访问策略对当前Bucket现有的其他访问方式不造成任何影响。
按图形策略添加接入点策略
-
在接入点策略对话框,按说明完成以下配置项。
配置项
说明
示例值
接入点策略
选中按图形策略添加。
不涉及
接入点ARN
显示接入点ARN,格式为
acs:oss:region名称:账号UID:accesspoint/接入点名称/object/*
。acs:oss:ap-southeast-2:137918634953****:accesspoint/ap-01/object/*
授权资源
授权整个Bucket或Bucket内的部分资源供接入点访问。
-
整个Bucket:授权策略针对整个Bucket生效。
-
指定资源:授权策略只针对指定的资源生效。您可以配置多条针对指定资源的授权策略。
-
部门:指定资源
-
部门:整个Bucket
-
部门:指定资源
资源路径
-
选择授权资源为整个Bucket时,资源路径格式为
accesspoint/接入点名称/*
。 -
选择授权资源为指定资源时,按以下说明填写资源路径。
-
针对目录级别授权
授权访问目录下的所有子目录和文件时,需在目录结尾处加上星号(*)。例如授权访问abc目录下的所有子目录和文件,则填写为abc/*。
-
针对指定文件授权
授权访问目录下的指定文件时,需填写不包含Bucket名称在内的文件的完整路径,例如授权访问abc目录下的myphoto.png文件,则填写为abc/myphoto.png。
-
-
部门:accesspoint/ap-01/object/dir1/*
-
部门:accesspoint/ap-01/*
-
部门:accesspoint/ap-01/object/dir2/*
授权用户
仅支持为当前账号下的RAM用户授权访问指定资源。
完成RAM授权时,您需要选中子账号,然后从下拉菜单中选择目标RAM用户。如果需要授权的RAM用户较多时,建议直接在搜索框输入RAM用户名称关键字进行模糊匹配。
- 重要
从下拉菜单中选择目标RAM用户时,要求您当前的账号必须是阿里云账号,或拥有此Bucket管理权限及RAM控制台ListUsers权限的RAM用户,否则无法查看当前账号的RAM用户列表。为RAM用户授予ListUsers权限的具体操作,请参见为RAM用户授权。
-
部门:子账号(UID为26571698800555****)
-
部门:子账号(UID为25770968794578****)
-
部门:子账号(UID为26806658794579****)
授权操作
您可以通过简单设置和高级设置两种方式进行授权操作。
-
简单设置
选中此项后,您可以结合实际场景按照如下说明配置相应的访问权限。将鼠标悬停在每一种访问权限右侧对应的
,可获取各访问权限对应的Action列表。
-
只读(不包含ListObject操作):对相关资源拥有查看和下载的权限。
-
只读(包含ListObject操作):对相关资源拥有查看、列举和下载的权限。
-
读/写:对相关资源有读和写权限。
-
完全控制:对相关资源有读、写、删除等所有操作权限。
-
拒绝访问:拒绝对相关资源的所有操作。
重要
如果针对某用户同时配置了多条Bucket Policy规则,则该用户所拥有的权限是所有Policy规则的叠加。当这些Bucket Policy中包含拒绝访问权限时,遵循拒绝访问权限优先原则。例如针对某用户第一次设置了只读权限,第二次设置了读/写权限,则该用户最终的权限为读/写。如果第三次设置了拒绝访问权限,则该用户最终的权限为拒绝访问。
只读、读/写、完全控制对应的授权效力为Allow,拒绝访问对应的授权效力为Deny。
-
-
高级设置
选中此项后,您需要根据以下说明完成相关配置。
-
效力:包含允许(Allow)和拒绝(Deny)两种授权效力。
-
操作:支持配置所有OSS支持的Action。关于Action分类的更多信息,请参见RAM Policy概述。
-
-
部门:简单设置下的只读(包含ListObject操作)
-
部门:简单设置下的读/写
-
部门:简单设置下的读/写
-
-
单击提交。
-
接入点创建完成预计需要10分钟左右。
-
接入点创建后,接入点列表页面将显示OSS自动创建的接入点别名。
-
不支持修改、删除或者禁用接入点别名。
-
按语法策略添加接入点策略
-
在接入点策略对话框,接入点策略选中按语法策略添加。
-
在语法策略输入框中,输入以下授权策略。
部门接入点策略
{ "Version": "1", "Statement": [{ "Effect": "Allow", "Action": [ "oss:GetObject", "oss:GetObjectAcl", "oss:ListObjects", "oss:RestoreObject", "oss:ListObjectVersions", "oss:GetObjectVersion", "oss:GetObjectVersionAcl", "oss:RestoreObjectVersion" ], "Principal": [ "26571698800555****" ], "Resource": [ "acs:oss:ap-southeast-2:137918634953****:accesspoint/ap-01/object/dir1/*" ] },{ "Effect": "Allow", "Action": [ "oss:ListObjects", "oss:GetObject" ], "Principal": [ "26571698800555****" ], "Resource": [ "acs:oss:ap-southeast-2:137918634953****:accesspoint/ap-01" ], "Condition": { "StringLike": { "oss:Prefix": [ "dir1/*" ] } } } ] }
部门接入点策略
{ "Version": "1", "Statement": [{ "Effect": "Allow", "Action": [ "oss:GetObject", "oss:PutObject", "oss:GetObjectAcl", "oss:PutObjectAcl", "oss:ListObjects", "oss:AbortMultipartUpload", "oss:ListParts", "oss:RestoreObject", "oss:ListObjectVersions", "oss:GetObjectVersion", "oss:GetObjectVersionAcl", "oss:RestoreObjectVersion" ], "Principal": [ "25770968794578****" ], "Resource": [ "acs:oss:ap-southeast-2:137918634953****:accesspoint/ap-02/object/*" ] },{ "Effect": "Allow", "Action": [ "oss:ListObjects", "oss:GetObject" ], "Principal": [ "25770968794578****" ], "Resource": [ "acs:oss:ap-southeast-2:137918634953****:accesspoint/ap-02" ], "Condition": { "StringLike": { "oss:Prefix": [ "*" ] } } } ] }
部门接入点策略
{ "Version": "1", "Statement": [{ "Effect": "Allow", "Action": [ "oss:GetObject", "oss:PutObject", "oss:GetObjectAcl", "oss:PutObjectAcl", "oss:ListObjects", "oss:AbortMultipartUpload", "oss:ListParts", "oss:RestoreObject", "oss:ListObjectVersions", "oss:GetObjectVersion", "oss:GetObjectVersionAcl", "oss:RestoreObjectVersion" ], "Principal": [ "26806658794579****" ], "Resource": [ "acs:oss:ap-southeast-2:137918634953****:accesspoint/ap-03/object/dir2/*" ] },{ "Effect": "Allow", "Action": [ "oss:ListObjects", "oss:GetObject" ], "Principal": [ "26806658794579****" ], "Resource": [ "acs:oss:ap-southeast-2:137918634953****:accesspoint/ap-03" ], "Condition": { "StringLike": { "oss:Prefix": [ "dir2/*" ] } } } ] }
-
单击提交。
-
接入点创建完成预计需要10分钟左右。
-
接入点创建后,接入点列表页面将显示OSS自动创建的接入点别名。
-
不支持修改、删除或者禁用接入点别名。
-
-
-
通过Bucket Policy为接入点委派权限。
-
在接入点列表页面,单击已创建的接入点。
-
在接入点配置管理页签,单击接入点权限委派。
-
在接入点权限委派对话框,通过Bucket Policy将Bucket的访问策略委派给接入点。
委派类型
说明
示例值
oss:DataAccessPointArn
为指定的接入点委派权限。委派后,仅指定的接入点生效。
oss:DataAccessPointAccount
oss:AccessPointNetworkOrigin
为互联网或专有网络VPC下的接入点委派权限。委派后,仅指定网络的接入点生效。
说明
互联网支持外网和专有云网络VPC。选择互联网接入点后,专有网络接入点也会生效。
oss:DataAccessPointAccount
为当前账号下的所有接入点委派权限。委派后,账号下所有的接入点生效。
-
单击生成Policy。
-
使用REST API
如果您的程序自定义要求较高,您可以直接发起REST API请求。直接发起REST API请求需要手动编写代码计算签名。
-
关于创建接入点的API接口说明,请参见CreateAccessPoint。
-
关于配置接入点策略的API接口说明,请参见PutAccessPointPolicy。
-
关于通过Bucket Policy为接入点委派权限的API接口说明,请参见PutBucketPolicy。
后续步骤
创建接入点后,您需要使用接入点别名进行访问。具体步骤,请参见使用接入点。
内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家
阿里云企业补贴进行中: 马上申请
腾讯云限时活动1折起,即将结束: 马上收藏
同尘科技为腾讯云授权服务中心。
购买腾讯云产品享受折上折,更有现金返利:同意关联,立享优惠
转转请注明出处:https://www.yunxiaoer.com/159071.html