更新时间:2024-07-03 GMT+08:00

OBS安全配置建议

安全性是华为云与您的共同责任。华为云负责云服务自身的安全,提供安全的云;作为租户,您需要合理使用云服务提供的安全能力对数据进行保护,安全地使用云。详情请参见责任共担

本文提供了OBS使用过程中的安全最佳实践,旨在为提高整体安全能力提供可操作的规范性指导。根据该指导文档您可以持续评估OBS资源的安全状态,更好的组合使用OBS提供的多种安全能力,提高对OBS资源的整体安全防御能力,保护存储在OBS桶内的数据不泄露、不被篡改,以及数据传输过程中不泄露、不被篡改。

本文从以下几个维度给出建议,您可以评估OBS使用情况,并根据业务需要在本指导的基础上进行安全配置。

建议妥善管理认证凭证,减小因凭证泄漏导致的数据泄露风险

  1. 建议使用临时AK/SK进行业务处理,减小凭证泄漏导致您数据泄露的风险

    当部署在ECS上的应用程序或者其他华为云服务需要访问OBS资源时,必须对访问OBS的请求进行签名,因此应用程序或服务需要持有一个可以访问OBS桶的凭证。建议您为应用程序或服务配置IAM委托或临时AK/SK,通过IAM委托可以获取一组临时AK/SK,临时AK/SK到期自动过期失效,可以有效降低凭证泄露造成的数据泄露风险。详情请参见通过临时访问密钥访问OBS通过委托获取临时AK/SK

  2. 定期轮转永久AK/SK减小凭证泄漏导致您数据泄露的风险

    如您必须使用永久AK/SK,建议对永久AK/SK进行定期凭证轮转,同时加密存储,避免凭证长期使用过程中预置的明文凭证泄露导致数据泄露。详情请参见通过永久访问密钥访问OBS

正确的使用OBS提供的访问控制能力保护数据不泄露、不被篡改

正确的使用OBS提供的访问控制能力,可以有效预防您的数据被异常窃取或者破坏。

  1. 建议对不同角色的IAM用户仅设置最小权限,避免权限过大导致数据泄露或被误操作

    为了更好的进行权限隔离和管理,建议您配置独立的IAM管理员,授予IAM管理员IAM策略的管理权限。IAM管理员可以根据您业务的实际诉求创建不同的用户组,用户组对应不同的数据访问场景,通过将用户添加到用户组并将IAM策略绑定到对应用户组,IAM管理员可以为不同职能部门的员工按照最小权限原则授予不同的数据访问权限,详情请参见部门公共数据权限管理策略语法

  2. 利用桶策略保护您的数据不被异常读取和操作

    仅在资源上配置实际业务处理中所需权限,避免权限配置过大导致数据被错误分享给他人。详情请参见OBS权限控制概述

    OBS的桶策略支持多种Condition条件灵活设置,每一个Condition都是一个新的安全控制维度,建议您通过配置Condition进一步限定数据访问的上下文,如通过拒绝非指定源IP对桶的访问,限制数据只能被指定客户端访问,避免数据被窃取。详情请参见限制指定IP地址对桶的访问权限桶策略参数说明

  3. 建议将需要公开访问的对象和私有的对象使用不同的桶进行存储,从而简化您的访问控制策略

    推荐将需要公开访问的对象和私有的对象使用不同的桶进行存储。公开桶内请勿存放敏感数据,同时请避免私有桶误配置授权公开访问的桶策略导致私有对象泄露,建议存储私有对象的桶通过Condition进一步限制可以访问数据的源端确保数据不被外部攻击者窃取。详情请参见限制指定IP地址对桶的访问权限

  4. 建议使用OBS的数据临时分享功能来快速分享指定数据,无需进行复杂的桶策略编写

    当需要将存放在OBS中对象(文件或文件夹)分享给其他用户时,建议使用OBS的数据临时分享功能,分享的URL可指定有效期,过期自动失效,避免数据长期暴露给其他用户导致泄露。详情请参见通过临时URL访问OBS

  5. 开启敏感操作多因子认证保护您的数据不被误删

    OBS支持敏感操作保护,开启后执行删除桶等敏感操作时,系统会进行身份验证,进一步保证OBS配置和数据的安全性,对数据的高危操作进行控制。详情请参见敏感操作

加密存储数据

OBS支持SSE-KMS服务端加密方案,为桶配置SSE-KMS服务端加密能力后,对于上传到桶中的每个对象,OBS都会访问KMS服务获取您指定的KMS密钥进行数据加密,避免数据明文存储。当下载对象时,OBS同样会访问KMS获取对应密钥进行数据解密,整个加解密过程中OBS都不会存储对应密钥。详情请参见配置桶默认加密

OBS支持SSE-OBS服务端加密方案,为桶配置SSE-OBS服务端加密能力后,对于上传到桶中的每个对象,OBS都会进行数据加密,避免数据明文存储。当下载对象时,OBS会自动帮助用户进行数据解密。详情请参见配置桶默认加密

除了SSE-KMS和SSE-OBS方案,OBS还支持SSE-C服务端加密方案,您可以在对象上传和下载的请求中携带密钥和加解密算法,OBS使用您提供的密钥和算法对对象数据进行加解密,避免数据明文存储。OBS不存储您提供的加密密钥,如果您丢失加解密密钥,则会无法获取该对象明文数据。详情请参见服务端加密SSE-C方式

构建数据的恢复、容灾能力避免数据被异常破坏

预先构建数据的容灾和恢复能力,可以有效避免异常数据处理场景下数据误删、破坏的问题。

  1. 建议启用多版本获得异常场景数据快速恢复能力

    利用多版本控制,您可以在一个桶中保留一个对象的多个版本,在意外操作或应用程序故障时通过历史版本对象快速恢复数据。详情请参见多版本控制

  2. 建议使用跨区域复制构建异地数据容灾能力

    有些数据需要异地备份存储,跨区域复制为您提供跨区域数据容灾的能力,满足您将数据复制到异地进行备份的需求。详情请参见跨区域复制

确保您的数据在传输到OBS过程中不被窃取和篡改

  1. 建议使用HTTPS协议访问OBS,确保数据传输过程中不被窃取和破坏

    HTTPS(超文本传输安全协议)是一种互联网通信协议,可保护客户端与服务端之间传输的数据的完整性和机密性。建议您使用HTTPS协议进行数据访问。

  2. 建议使用桶策略限制对OBS桶的访问必须使用HTTPS协议

    为避免客户端误使用HTTP协议进行OBS业务操作,建议通过桶策略中的SecureTransport条件进行限制,限制是否必须使用HTTPS协议发起请求对该桶进行操作。SecureTransport配置为True时,发起的请求必须使用SSL加密。如何配置桶策略中Condition以及SecureTransport条件,详情请参见桶策略参数说明

利用OBS提供的操作日志审计是否存在异常数据访问操作

  1. 开启云审计服务记录OBS的所有访问操作便于事后审查

    云审计服务(Cloud Trace ServiceCTS),是华为云安全解决方案中专业的日志审计服务,提供对各种云资源操作记录的收集、存储和查询功能,可用于支撑安全分析、合规审计、资源跟踪和问题定位等常见应用场景。

    您开通云审计服务并创建和配置追踪器后,CTS可记录OBS的管理事件和数据事件用于审计。详情请参见审计

  2. 开启桶Logging记录桶的所有访问请求

    通过访问日志记录,桶的拥有者可以深入分析访问该桶的用户请求性质、类型或趋势。当用户开启一个桶的日志记录功能后,OBS会自动对这个桶的访问请求记录日志,并生成日志文件写入用户指定的桶中。详情请参见日志记录

  3. 使用云监控服务对安全事件进行实时监控、告警

    您在使用OBS的过程中会也可能会遇到服务端返回的错误响应,为使您更好地掌握OBS桶的状态,华为云提供了云监控服务(Cloud Eye)。您可使用该服务监控自己的OBS桶,执行自动实时监控、告警和通知操作,帮助您实时掌握桶中所产生的请求、流量和错误响应等信息。

    云监控服务不需要开通,会在用户创建资源(如OBS桶)后自动启动。

    关于云监控服务的更多介绍,请参见云监控服务产品介绍

使用最新版本的SDK获得更好的操作体验和更强的安全能力

建议客户升级SDK并使用最新版本,可以在您使用OBS的过程中对您的数据提供更好的保护。最新版本SDK在各语言对应界面下载,请参见OBS SDK

使用其他云服务进一步增强对数据的安全防护

  1. 启用WAF进行静态网站防护

    如果您需要使用OBS静态网站托管功能,为进一步提升您网站的安全性,建议您使用华为云的WAF服务对您的域名进行保护,降低网站被网络攻击的风险。详情请参见管理防护域名

  2. 启用态势感知服务(SA)保障OBS资源安全

    态势感知通过“安全上云合规检查1.0”、“等保2.0三级要求”、“护网检查”三种基线规则,检测OBS桶关键配置项,告警提示存在安全隐患的配置,并提供相应配置加固建议和帮助指导。您可以通过态势感知的资源管理功能,快速了解到OBS桶所属区域、安全状况等信息,帮助您定位安全风险问题。详情请参见资源管理

  3. 隐私保护

    随着组织管理越来越多的数据,大规模地识别和保护它们的敏感数据会变得越来越复杂、昂贵和耗时。建议您通过DSC服务对OBS桶内数据进行敏感数据识别和管理,降低隐私数据识别和保护的成本以及复杂度。详情请参见创建敏感数据识别任务