如何保障云上数据安全?一文详解云原生全链路加密

简介: 对于云上客户而言,其云上数据被妥善的安全保护是其最重要的安全需求,也是云上综合安全能力最具象的体现。本文作者将从云安全体系出发,到云数据安全,再到云原生安全体系对全链路加密进行一次梳理,从而回答:在云原生时代,全链路加密需要做什么?如何做到?以及未来要做什么?

本文节选自《不一样的 双11 技术:阿里巴巴经济体云原生实践》一书

作者
李鹏(壮怀)阿里云容器服务高级技术专家
黄瑞瑞  阿里云技术架构部资深技术专家

导读:对于云上客户而言,其云上数据被妥善的安全保护是其最重要的安全需求,也是云上综合安全能力最具象的体现。本文作者将从云安全体系出发,到云数据安全,再到云原生安全体系对全链路加密进行一次梳理,从而回答:在云原生时代,全链路加密需要做什么?如何做到?以及未来要做什么?

什么是云原生全链路加密

数据安全在云上的要求,可以用信息安全基本三要素 "CIA"来概括,即机密性(Confidentiality)、完整性(Integrity)和可用性(Availability)。

  • 机密性专指受保护数据只可以被合法的(或预期的)用户可访问,其主要实现手段包括数据的访问控制、数据防泄露、数据加密和密钥管理等手段;
  • 完整性是保证只有合法的(或预期的)用户才能修改数据,主要通过访问控制来实现,同时在数据的传输和存储中可以通过校验算法来保证用户数据的完整性;
  • 数据的可用性主要体现在云上环境整体的安全能力、容灾能力、可靠度,以及云上各个相关系统(存储系统、网络通路、身份验证机制和权限校验机制等等)的正常工作保障。

在三要素中,第一要素机密性(Confidentiality)最常见也是最常被要求的技术实现手段就是数据加密。具体到云原生维度,需要实现的就是云原生的全链路加密能力。

“全链路”指的是数据在传输 (in Transit,也叫 in-motion)、计算 (Runtime,也叫 in-process),存储 (in storage,也叫 at-rest) 的过程,而“全链路加密”指的是端到端的数据加密保护能力,即从云下到云上和云上单元之间的传输过程、到数据在应用运行时的计算过程(使用/交换),和到数据最终被持久化落盘的存储过程中的加密能力。

• 数据传输 (数据通信加密,微服务通信加密,应用证书和密钥的管理);
• 数据处理(运行时安全沙箱 runV, 可信计算安全沙箱 runE);
• 数据存储 (云原生存储的 CMK/BYOK 加密支持、密文/密钥的存储管理、容器镜像的存储加密、容器操作/审计日志安全)。

1.png

本文中的技术描述针对的是在云原生全链路加密中已有的和未来需要实现的技术目标。

云安全 > 云数据安全 > 云原生全链路加密

2.png

云安全

针对用户群体的不同,对安全链路有不同的层次定义,云安全涵盖了云客户安全和云厂商安全在 IaaS 的软件、硬件以及物理数据中心等的安全。

3.png

  • 云原生客户(Cloud Native Customer)安全

    • 应用安全
    • 操作安全
    • 商业安全
    • 容器网络安全
    • 容器数据安全
    • 容器运行时安全
  • 云客户(Cloud Customer)安全
  • 云厂商(Cloud IaaS DevOps)安全

云原生安全

4.png

云原生安全首先需要遵循云数据安全标准,在复用了云基础架构安全能力的前提下,同时在安全运行时,软件供应链上有进一步的安全支持。

云原生存储是通过声明式 API 来描述了云数据的生命周期,并不对用户透出底层 IaaS 的数据加密细节。不同的云原生存储一般作为云数据的载体,复用了云 IaaS 基础安全能力,还需要包括软件供应链中的镜像安全,和容器运行时 root 文件系统安全和容器网络安全。

  • 云原生安全的运行时 = 数据处理过程中的计算安全,内存安全,文件系统安全和网络安全
  • 云原生软件供应链安全 = 可执行文件/用户代码安全 
  • 云原生基础架构的安全 = 云数据存储安全

云数据安全

云用户数据安全包括以下的三个方面的工作:

  • 数据保护:RAM ACL 控制细粒度的数据的访问权限;敏感数据保护(Sensitive
    Data Discovery and Protection,简称 SDDP)、数据脱敏、数据分级分类。
  • 数据加密:CMK 加密数据能力;BYOK 加密数据能力。
  • 密钥/密文管理:KMS/HSM 等云服务;三方 Vault 服务。

数据安全的生命周期

为了更好的理解数据保护,需要对数据安全的生命周期有一个了解,因为数据保护贯穿于整个的数据生命周期:

  • 数据收集
  • 数据传输
  • 数据处理
  • 数据交换
  • 数据存储
  • 数据销毁

5.png

云原生数据生命周期,以 ACK(容器服务 Kubernetes)挂载阿里云云盘为例:

  • 云盘 PV 的申明和创建定义了数据,云盘数据的加密需要在申明定义中就体现,对密钥匙选择、加密算法选择都可以申明式支持,RAM 权限细粒度遵循最小权限;
  • 云盘挂载到虚拟机通过 PVC 在容器组 Pod 引用得以触发和实现;
  • 云盘数据的解密通过用户 CMK/BYOK 在块设备上实现透明加密解密;
  • Pod 生命周期的变化导致 PVC 关联云盘在不同宿主 ECS 上的 Detach/Attach;
  • 对 PV 的 Snapshot 生命触发了云盘 Snapshot 的创建;
  • PV 的删除可以通过 OnDelete 关联到云盘的中止和数据的删除。

全链路的数据安全

在狭义上来说是对数据端到端的加密,主要集中在了数据生命周期中的三个阶段:

  • 数据传输
  • 数据处理
  • 数据存储

数据传输阶段

安全通信设计,密文/密钥的安全管理和传输,既要满足云环境下的安全传输、云原生引入的容器网络、微服务、区块链场景,又对云原生数据安全传输提出了进一步的要求。

  • 云安全传输

在云环境下 VPC/安全组的使用,密文/密钥的安全管理 KMS 南北向流量通过 SSL 证书服务获取可信有效的 CA,对南北流量实现 HTTPS 加密和卸载,以及对 RPC/gRPC 通信使用 SSL 加密, 减小 VPC 的攻击面,通过 VPN/SAG Gateway 来实现安全访问链路。

  • 云原生安全传输

云原生场景,单一集群允许多租户的同时共享网络、系统组件权限控制、数据通信加密、证书轮转管理,多租场景下东西流量的网络隔离、网络清洗;云原生微服务场景,应用/微服务间通信加密,和证书管理;云原生场景下密钥、密文的独立管理和三方集成、KMS 与 Vault CA, fabric-ca, istio-certmanager 等的集成。

数据处理阶段

数据处理阶段,对内存级的可信计算,既有云安全虚拟化安全运行的要求,又有容器安全沙箱和可信安全沙箱的需求。

6.png

  • 云安全虚拟化可信计算:TEE SGX;ARM Trust Zone;
  • 云原生容器安全沙箱:runV Kata 安全容器沙箱 ;runE Graphane/Occlum 可信安全沙箱。

7.png

数据存储阶段

既有云安全对云存储加密、云数据服务加密需求,又有对容器镜像存储加密,审计日志、应用日志加密和三方集成的需求,以及对密文密码的不落盘存储支持。

云存储加密方式:

  • 数据 + 加密算法 + 用户密钥或主密钥;
  • 客户端加密/服务端加密。

8.png

云存储数据,以服务端加密为主;安全的密钥管理 KMS/HSM;安全的加密算法,全面支持国产算法以及部分国际通用密码算法,满足用户各种加密算法需求:

  • 对称密码算法:支持 SM1、SM4、DES、3DES、AES;
  • 非对称密码算法:支持 SM2、RSA(1024-2048);
  • 摘要算法:支持 SM3、SHA1、SHA256、SHA384。

阿里云只能管理设备硬件,主要包括监控设备可用性指标、开通、停止服务等。密钥完全由客户管理,阿里云没有任何方法可以获取客户密钥。

云存储加密支持

  • 块存储 EBS 云盘:支持虚拟机内部使用的块存储设备(即云盘)的数据落盘加密,确保块存储的数据在分布式系统中加密存放,并支持使用服务密钥和用户自选密钥作为主密钥进行数据加密;
  • 对象存储 OSS:支持服务端和客户端的存储加密能力。在服务端的加密中,支持使用服务密钥和用户自选密钥作为主密钥进行数据加密;在客户端的加密中,支持使用用户自管理密钥进行加密,也支持使用用户 KMS 内的主密钥进行客户端的加密;
  • RDS 数据库的数据加密:RDS 数据库的多个版本通过透明加密(Transparent
    Data Encryption,简称 TDE)或云盘实例加密机制,支持使用服务密钥和用户自选密钥作为主密钥进行数据加密;
  • 表格存储 OTS:支持使用服务密钥和用户自选密钥作为主密钥进行数据加密;
  • 文件存储 NAS:支持使用服务密钥作为主密钥进行数据加密;
  • MaxCompute 大数据计算:支持使用服务密钥作为主密钥进行数据加密;
  • 操作日志,审计日志的安全存储,以及三方日志系统集成。

云原生存储加密:目前阿里云容器服务 ACK 可以托管的主要以块存储、文件存储和对象存储为主,其他类型的 RDS、OTS 等数据服务是通过 Service Broker 等方式支持。

  • 用户容器镜像/代码 (企业容器镜像服务,OSS CMK/BYOK 加密);
  • 云原生存储卷 PV(申明式支持云存储的 CMK/BYOK 以及数据服务层的加密支持);
  • 操作日志和审计日志 (ActionTrail OpenAPI/Kubernetes AuditLog: SLS 日志加密);
  • 密文密码 (KMS/Vault 对密文的三方加密支持和内存存储,非 etcd 持久化)。

9.png

结论

云原生全链路的数据安全、云安全体系下的全链路加密已经成为了基础配置,新的容器化基础架构和应用架构的变化,结合云原生技术体系的特征,在数据传输、数据处理、数据存储阶段都需要增加相应云原生环境对网络、运行时、存储的全链路加密需求。

  • 既要满足云环境下的安全传输、云原生引入的容器网络、微服务、区块链场景,又对云原生数据安全传输提出了进一步的要求;
  • 既有云安全虚拟化安全运行的要求,又有容器安全沙箱,可信安全沙箱的需求;
  • 既有云安全对云存储加密、云数据服务加密需求,又有对容器镜像存储加密、审计日志、应用日志加密和三方集成的需求,以及对密文密码的不落盘存储的支持。

ban.jpg

本书亮点

  • 双11 超大规模 K8s 集群实践中,遇到的问题及解决方法详述
  • 云原生化最佳组合:Kubernetes+容器+神龙,实现核心系统 100% 上云的技术细节
  • 双 11 Service Mesh 超大规模落地解决方案

阿里巴巴云原生关注微服务、Serverless、容器、Service Mesh 等技术领域、聚焦云原生流行技术趋势、云原生大规模的落地实践,做最懂云原生开发者的技术圈。”

相关实践学习
Docker镜像管理快速入门
本教程将介绍如何使用Docker构建镜像,并通过阿里云镜像服务分发到ECS服务器,运行该镜像。
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。     相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
相关文章
|
存储 供应链 API
区块链技术在电商API中的应用:保障数据安全与交易透明
区块链技术在电商API中的应用,为数据安全与交易透明提供了新方案。通过数据加密、分布式存储、智能合约管理、商品溯源及实时结算等功能,有效提升电商数据安全性与交易可信度。然而,技术成熟度、隐私保护和监管合规等挑战仍需克服。未来,随着物联网、大数据等技术融合及政策支持,区块链将在电商领域发挥更大潜力,推动行业智能化发展。
|
存储 数据采集 弹性计算
Codota的存储架构通过多种方式保障数据安全
Codota的存储架构通过多种方式保障数据安全
253 4
|
存储 弹性计算 监控
Codota的存储架构通过多种方式保障数据安全
Codota的存储架构通过多种方式保障数据安全
221 4
|
存储 数据采集 监控
云上数据安全保护:敏感日志扫描与脱敏实践详解
随着企业对云服务的广泛应用,数据安全成为重要课题。通过对云上数据进行敏感数据扫描和保护,可以有效提升企业或组织的数据安全。本文主要基于阿里云的数据安全中心数据识别功能进行深入实践探索。通过对商品购买日志的模拟,分析了如何使用阿里云的工具对日志数据进行识别、脱敏(3 种模式)处理和基于 StoreView 的查询脱敏方式,从而在保障数据安全的同时满足业务需求。通过这些实践,企业可以有效降低数据泄漏风险,提升数据治理能力和系统安全性。
2423 259
云上数据安全保护:敏感日志扫描与脱敏实践详解
|
安全 算法 网络安全
网络安全与信息安全:构建数字世界的坚固防线在数字化浪潮席卷全球的今天,网络安全与信息安全已成为维系社会秩序、保障个人隐私和企业机密的关键防线。本文旨在深入探讨网络安全漏洞的本质、加密技术的前沿进展以及提升公众安全意识的重要性,通过一系列生动的案例和实用的建议,为读者揭示如何在日益复杂的网络环境中保护自己的数字资产。
本文聚焦于网络安全与信息安全领域的核心议题,包括网络安全漏洞的识别与防御、加密技术的应用与发展,以及公众安全意识的培养策略。通过分析近年来典型的网络安全事件,文章揭示了漏洞产生的深层原因,阐述了加密技术如何作为守护数据安全的利器,并强调了提高全社会网络安全素养的紧迫性。旨在为读者提供一套全面而实用的网络安全知识体系,助力构建更加安全的数字生活环境。
|
监控 安全 API
构建坚不可摧的防线:全方位保障API接口数据安全
在数字化时代,API作为系统间数据沟通的桥梁,其安全性至关重要。本文系统解析API安全的四大基石:身份认证、授权管理、数据完整性与机密性,并深入探讨HTTPS加密、强认证机制、精细授权、数据保护及纵深防御等关键技术实践,帮助企业构建全面的API安全体系,防范数据泄露与攻击风险,保障数据传输安全与业务稳定运行。
|
SQL 关系型数据库 MySQL
MySQL备份策略:全面保障数据安全
本文深入解析MySQL备份策略,涵盖逻辑备份、物理备份、增量备份等多种方案,帮助企业构建可靠的数据保护体系,防范数据丢失风险,保障业务连续性。
|
存储 安全 Cloud Native
云原生安全必修课:RDS透明加密(TDE)与数据脱敏联动实施方案
云原生环境下,数据泄露风险日益严峻,传统安全方案面临加密与脱敏割裂、保护不连续、权限控制粗放三大挑战。本方案融合TDE透明加密与动态数据脱敏技术,构建存储-传输-计算全链路防护体系,通过SQL级加密与角色化脱敏规则,实现细粒度数据保护。结合密钥管理、权限控制与多云适配,提升安全性与性能,广泛适用于金融、医疗等高安全要求场景。
644 3
|
存储 安全 Cloud Native
从数据风险出发的云上数据安全最佳实践
本文介绍了从数据风险出发的云上数据安全最佳实践,涵盖数据泄露现状及原因分析,以及基于云的安全机制。文章详细探讨了以云为基础实现数据全链路可视可控的方法,包括资产可见可控、数据安全中心、治理闭环和自动化智能化的数据安全治理能力。通过云原生方案,企业可以更高效地识别、预警和处置数据风险,确保数据安全。文中还提到多项免费工具和服务,帮助企业降低数据泄露风险并减少安全投入。
670 60
|
安全 网络协议 网络安全
DDoS攻击来袭,如何防御DDoS攻击以保障数据安全无忧?
DDoS攻击来袭,如何防御DDoS攻击以保障数据安全无忧?
587 20