01. 背景介绍
进入云起实验室的链接,包含操作手册和操作控制台。可通过此界面进入,也可直接从阿里云控制台进入,如进入 OSS 控制台,若未开通则需先进行开通操作。
实验中,点击链接进入 OSS 控制台,开始实操,可以看到正在创建中的任务。
最下方是开通日志服务和开通 OSS 服务,上面的分别是创建本次实验过程中使用的OSS Bucket,创建日志的 project 和 logstore。创建完成后,进入 OSS 控制台。也可根据指导书操作。
左侧是针对 OSS 服务 的操作区域,可以看到一个 Bucket 列表,本次实验自动创建了以“adc - lab”开头加随机数字的 Bucket。Bucket是对象存储的访问单元,点击该 Bucket 进入其概览页面。
访问 Bucket 需要入口,类似网站的域名。可以看到有外网和内网访问域名,外网为 Bucket 名加“oss - cn - shanghai.aliyuncs.com”,内网为Bucket 名加“oss - cn - shanghai - internal.aliyuncs.com”。
02. 关于 Access Point
2.1 创建接入点
若公司某项目组需访问 Bucket,但不希望其直接知晓 Bucket 信息且不进行强绑定,只希望提供单独接入点,如创建名为“accesspoint - ap1”的接入点,指定其针对当前 Bucket,使用该接入点代替该 Bucket,通过特定 VPC (阿里云个人虚拟数据中心网络)或互联网(接入点域名)访问,实验中选择通过互联网访问。
创建接入点时需赋予一定权限,点击“提交”。
接入点可看作一个endpoint,有外网和内网endpoint。接入点名称加UID即可生成访问链接,该链接相当于 OSS 的访问通道。通过该链接访问 Bucket 资源即可将 Bucket 资源掌握在基础设施或运营管理人员手中,业务部门通过最小化单元访问。
2.2 接入点委派
接入点创建完成后无法直接访问,需要进行接入点委派。生成Policy保存后,接入点可被访问。
若日后不需要该接入点,可先删除策略,再删除接入点。
接入点的创建相当于为 Bucket 创建了虚拟的链接,上述操作与 Bucket 未发生直接关系,不会影响Bucket 原有的配置,更加方便。
03. 关于 Bucket
为方便实验,在 Bucket 中上传几个文件。
3.1 权限管控
(1)阻止公共访问
开启阻止公共访问。开启“阻止公共访问”后,鉴权时将忽略已有的公共读 ACL、公共读写 ACL和含有公共访问语义的Bucket Policy,且不再允许创建新的包含公共读、公共读写或公共访问的权限。换言之,所有请求必须通过账号权限验证,不能匿名访问。
(2)读写权限
在开启阻止公共访问后,若设置公共读等包含公共访问语义的权限将不被允许。
(3)Bucket授权策略
①按图形策略添加
a. 授权资源与授权用户
Bucket 授权以资源为中心,可针对整个Bucket 或指定资源进行权限设置。关于指定资源的 Bucket,可通过前缀指定某任务定义单独的目录,仅允许该目录下的项目组访问。
由于已阻止公共访问,Bucket policy 中包含了公共访问的语义,所有授权时必须指定有访问权限的子账号UID,而不可以授权到所有账号。当存在上下游关系或有多个 UID时,该Bucket也可为其他账号赋予一定的访问权限,仅需通过该账号对应在阿里云子账号的ID即可访问。
b. 授权操作与条件
当允许多个账号访问后,还可以对可访问账号设置访问权限。权限包括只读、读写、完全控制和拒绝访问。只读包括两种,一种需知道具体文件进行访问,另一种拥有 ListObject权限,可查看 Bucket 内所有文件。后者较危险,可能导致获得该权限的账号访问不应允许它访问的文件,一般不建议该种授权方式。对于管理业务,可能配置读写权限。完全控制权限一般赋予项目组管理员。拒绝访问用于阻止某些账号访问。
访问方式建议用 HTTPS 加密连接,若程序较老可用 HTTP,但可能导致OSS控制台无法使用(因为OSS控制台是通过 API 运行的)。可设定特定 IP 段访问,一般用于拥有特定 IP 的服务器访问,如IDC的服务器可通过专线访问,或 VPC 内的设置权限区分可访问和不可访问的服务器;还可针对特定地区访问,如允许中国大陆地区访问而屏蔽海外用户,则需要将中国大陆区域的公网纳入公共网段;还可以屏蔽恶意 IP 攻击等,将其纳入“IP ≠ ”中;还可选择已有的特定VPC 访问,在设定的策略内指定 该 VPC 的客户可通过该账号访问,其他未获得权限的 VPC 不可访问。
设置权限时,若存在公共读语义需重新授权,选择授权账号、指定资源、给予只读权限,点击确定。
②按语法策略添加
上面时基于资源给某个RAM账号赋权的配置过程,其生效的是一组策略。如果有多个策略,它们会合并到一个策略脚本中批量生成和检索,若有冲突按策略语法处理,一般是或的关系。因此,常出现看似阻止但仍有访问权限的情况,如需更高级操作可编辑策略语义脚本,有特定需求可通过工单或脚本工具检测。
(4)防问控制 RAM
上述权限控制是针对 Bucket,以资源为中心给某个账号赋予一定的权限。此外,还可以给某个用户赋予一定权限。
如账号wangtaiping,它是有一个特定权限的账号,它默认具备了OSS FullAccess权限,即对该 UID 下所有的 OSS 都有完全控制的权限。一般情况下,我们不建议赋予所有账户这样的权限,而要尽量把权限最小化。
3.2 数据安全
(1)版本控制
类似于保护器。合入代码时通常会有版本的更新和回退,在版本控制后,它以对象(一个文件)为单位,该文件一旦被覆盖写或被删除,都会把原有的文件产生一个历史版本,防止人因差错、病毒攻击等。该功能本身不收费,但存储历史版本会产生容量费,可通过生命周期规则,根据文件修改时间设定规则执行,防止因历史文件版本过多而导致的成本上升。一般建议用户开启版本管理功能。
(2)防盗链
我们将业务文件在互联网公开时,可能会有其他人将该链接嵌入自己的网页,导致资源被盗链。防盗链功能可通过绑定自己的网页地址、域名或IP进行限制,设置白名单允许特定服务器访问。通过后台查询访问服务器(盗链网页)并利用黑名单屏蔽,该功能免费。
(3)敏感数据保护
该功能收费,费用为0.2元/GB,需授权开通。开通后可设置扫描间隔,扫描出敏感数据后,可通过脱敏等安全管理操作以保证合法合规。
(4)保留策略
一般在医疗和金融领域应用较多,如医疗影像或金融票据影像,需合规保存,设定时间内文件不可修改、删除,执行完成后才可操作,也称为法规遵从。
(5)服务器端加密
可在OSS控制台上选择。当需要更高级别的安全时,如要满足等保 3 的要求,或者满足合规、业务审查的要求时,即可选择 OSS 完全托管的加密方式,如 AES256 算法。若对整个业务加密,建议使用自己的KMS服务和加密密钥。
3.3 内容安全
内容检测开通后,即可创建检测规则。
(1)选择类型
目前主要针对图片任务检测,后续可能扩展到视频和文字文件,可设定后缀名。可针对不同的检测级别进行检测,包括基础违禁检测、涉及商业行为检测(如特殊符号)和 AIGC 业务相关的复杂检测(其与用户体验和业务相关,如引人不适、惊悚等)。
(2)指定范围
待扫描的数据中可能包含了非常久远的历史数据,这些数据的安全性已获得了充分的信任,因此可按照时间扫描,仅扫描新的数据。也可以按照前缀设定,只扫描某个目录的数据,已经扫描过的数据也不再扫描,可以减少扫描量。
此外,还可以设置上限,避免产生大量的费用,如抽样扫描,可以选择最新的数据扫描其中的1000 个,若抽样扫描后几乎没有安全风险,即可降低扫描量;如果风险很大,则可能需要进行全盘扫描。此时,还可以进行排队扫描,即实时开始,而是在资源空闲时扫描。这样,即可降低扫描的成本。
如扫描 100 个,提交,任务开始执行。由于没有选择优惠,它是一个立即执行的任务。
3.4 日志管理
日志在日常使用中非常重要,与阿里云交流时是关键窗口,开启日志转存和日志查询对于问题的定位非常重要。
一般建议从两个维度记录日志,一是使用阿里云 SDK 访问 OSS 时,对于错误行为的 OSS 返回的日志,将其记录到业务应用日志中;二是开启日志服务和实时查询,按虚拟查询日志。
此外,针对日志服务,阿里云建设了 CloudLens for OSS。
(1)查询分析——访问明细日志
接入 Bucket ,开启采集后即可通过该平台访问明细日志。可以编写SQL语句,或利用 AI 助手编写 SQL,可以通过索引字段索引,也可以将操作方式 clint_ip、host、http_type、object_name、operation(GetBuckInfo如删除、下载、上传等)等作为索引项。
(2)报表中心
①资源用量
可以查看存储量、流量、请求分布等,洞察业务访问情况,并且可以按照地域等查询具体情况。
②访问分析
查询访问最频繁、下载量最大、上传最多、删除最多等数据;还可以对分层请求进行分析,如大文件小文件服务的质量如何,错误量是否偏大,错误集中的区域;还有 IP 访问量 TOP 分析。如分析恶意IP疯狂访问;某文件上传次数偏多或偏少;或生命周期中,要设置热数据等等。
③安全分析
基于阿里云经验,对 Bucket设置不合理和不安全给出建议,提出近期可能存在的高风险操作等。
(3)自定义仪表盘
用户可以自定义仪表盘,自行创建自己的仪表盘。
通过以上手段,即可完善 OSS 管理。
3.5 数据服务—— OSS 高防
高防开通后可防护多个 Bucket,按最少七天收费,不足七天按七天计算,因此,建议用户按需使用。费用一般10元/小时,从 OSS 侧开启比从安全侧开启有优惠。当遇到恶意攻击时,可开启 OSS 高防。