云上数据安全实践:一键加密K8s集群Secrets,防止高危机密信息泄露

本文涉及的产品
Web应用防火墙 3.0,每月20元额度 3个月
云安全中心漏洞修复资源包免费试用,100次1年
云安全基线管理CSPM免费试用,1000次1年
简介: 在Kubernetes集群中,我们通常使用Secrets模型存储和管理业务应用涉及的敏感信息,比如应用密码、TLS证书、Docker镜像下载凭据等敏感信息。Kubernetes会将所有的这些Secrets对象数据存储在集群对应的etcd中。阿里云容器服务Kubernetes版(简称ACK)通过用户指定的KMS主密钥,对K8s集群Secrets进行落盘加密,用户只需要一键配置就可以实现对K8s集群的纵深安全保护。

为什么要加密K8s Secrets?

Kubernetes在强大的运维编排管理能力之下,依赖了大量的跨产品、跨服务、跨模块调用所必须使用的关键、高危机密信息,例如密码、证书、凭据、访问密钥等。K8s使用Secrets模型存储和管理集群系统和集群中业务应用的敏感信息,并且通过内部的Etcd集群进行保存,同时在Etcd集群的副本中进行分布式复制存储。

为了方便您理解K8s集群管理了什么量级的Secrets,笔者部署了一个没有任何业务负载的Kubernetes集群,默认情况下,有约50个Secret项。
Screen Shot 2020-10-20 at 15.38.52.png

这其中任何一个Secret的泄露,都可能带来对Kubernetes集群,对业务系统,甚至是对企业的运行产生不可估量的损失。

因此您在享受K8s为您带来的便利时,也需要承担一定的管理责任,对K8s集群中托管的大量凭据进行必要的保护,防止来自各方面的安全威胁。

怎么做?

幸运的是,阿里云容器服务Kubernetes版(简称ACK)为您实现了大部分的加密解密的集成工作,您只需要一键配置,从而获得云原生的Secrets保护能力

在新建的ACK Pro集群中开启Secret落盘加密

  1. 登录容器服务管理控制台。
  2. 在控制台左侧导航栏中,单击集群
  3. 单击页面右上角的创建集群,在弹出的选择集群模板页面,选择Pro版集群,并单击创建
  4. ACK托管版页签找到Secret落盘加密,选中选择KMS密钥,在下拉框中选择KMS密钥ID。创建ACK Pro集群的其他配置请参见创建Kubernetes Pro版集群
    image.png

在已创建的ACK Pro集群中开启Secret落盘加密

  1. 登录容器服务管理控制台。
  2. 在控制台左侧导航栏中,单击集群
  3. 集群列表页面单击目标Pro集群名称。
  4. 在集群详情页面单击基本信息页签,在基本信息区域中打开Secret落盘加密开关。

当集群状态由更新中变为运行中时,说明该集群Secret落盘加密的特性已变更完成。

背后的机制

Kubernetes的加密过程基于Kubernetes提供的KMS Encryption Provider机制,使用信封加密的方式对存储在etcd中的Kubernetes Secret密钥进行自动加密和解密,信封加密的详细介绍请参见什么是信封加密?以下介绍Kubernetes Secret密钥进行加密和解密的过程:

  • 当一个业务密钥需要通过Kubernetes Secret API存储时,数据会首先被API Server生成的一个随机的数据加密密钥加密,然后该数据密钥会被指定的阿里云KMS密钥加密为一个密文密钥存储在etcd中。
  • 解密Kubernetes Secret密钥时,系统会首先调用阿里云KMS服务的解密OpenAPI进行密文密钥的解密,然后使用解密后的明文密钥对Secret数据解密并最终返回给用户。

您通过授权容器服务账号使用AliyunCSManagedSecurityRole系统角色的权限,来允许容器集群调用您的KMS服务内指定的CMK(用户主密钥)完成Secret的加密保护,因此您具备对K8s Secret数据的完全控制权和加解密动作的审计能力。

如果您登录操作审计控制台,在左侧导航栏单击历史事件查询,在历史事件查询页面有使用aliyuncsmanagedsecurityrole系统角色的加密和解密事件日志,则说明该集群后台已成功开启Secret落盘加密特性。您可以在操作审计服务中查看到对KMS的所有调用记录。
image.png

参考资料

ACK配置Secret加密的帮助文档
KMS创建密钥帮助文档
云产品和KMS集成加密数据的机制
一键加密更多云产品中的数据

相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
目录
相关文章
|
3月前
|
Kubernetes Devops 持续交付
DevOps实践:使用Docker和Kubernetes实现持续集成和部署网络安全的守护盾:加密技术与安全意识的重要性
【8月更文挑战第27天】本文将引导读者理解并应用DevOps的核心理念,通过Docker和Kubernetes的实战案例,深入探讨如何在现代软件开发中实现自动化的持续集成和部署。文章不仅提供理论知识,还结合真实示例,旨在帮助开发者提升效率,优化工作流程。
|
7天前
|
SQL 安全 算法
网络安全的隐形盾牌:漏洞防御与信息加密的艺术
【10月更文挑战第36天】在数字世界的海洋中,网络安全犹如一艘船的保护罩,守护着我们的隐私和数据安全。本文将揭开网络安全的神秘面纱,从常见的网络漏洞到先进的加密技术,再到培养必要的安全意识,我们将一步步构建起防御的堡垒。文章不仅分享技术细节,还强调了在个人和组织层面采取积极措施的重要性。
|
30天前
|
算法 安全 Java
【数据安全】常见加密算法总结
【数据安全】常见加密算法总结
117 1
|
1月前
|
SQL 安全 算法
网络安全与信息安全:构建数字世界的防线在数字化浪潮席卷全球的今天,网络安全与信息安全已成为维系社会秩序、保障个人隐私与企业机密的重要基石。本文旨在深入探讨网络安全漏洞的本质、加密技术的前沿进展以及提升安全意识的有效策略,为读者揭示数字时代下信息保护的核心要义。
本文聚焦网络安全与信息安全领域,详细剖析了网络安全漏洞的形成机理、常见类型及其潜在危害,强调了及时检测与修复的重要性。同时,文章系统介绍了对称加密、非对称加密及哈希算法等主流加密技术的原理、应用场景及优缺点,展现了加密技术在保障数据安全中的核心地位。此外,针对社会普遍存在的安全意识薄弱问题,提出了一系列切实可行的提升措施,如定期安全培训、强化密码管理、警惕钓鱼攻击等,旨在引导公众树立全面的网络安全观,共同构筑数字世界的安全防线。
|
1月前
|
安全 算法 Java
数据库信息/密码加盐加密 —— Java代码手写+集成两种方式,手把手教学!保证能用!
本文提供了在数据库中对密码等敏感信息进行加盐加密的详细教程,包括手写MD5加密算法和使用Spring Security的BCryptPasswordEncoder进行加密,并强调了使用BCryptPasswordEncoder时需要注意的Spring Security配置问题。
128 0
数据库信息/密码加盐加密 —— Java代码手写+集成两种方式,手把手教学!保证能用!
|
1月前
|
安全 网络安全 数据安全/隐私保护
网络安全的守护者:漏洞管理与加密技术的实践之路
【9月更文挑战第33天】在数字时代的浪潮中,网络安全成为了维护信息资产安全的关键防线。本文将深入探讨网络安全中的两个核心要素——漏洞管理和加密技术,揭示它们如何协同工作以保护我们的在线世界。我们将通过实际案例,展示这些技术如何在现实世界中发挥作用,并强调安全意识的重要性。无论你是IT专业人士还是普通网民,这篇文章都将为你提供宝贵的知识和启示。
|
2月前
|
SQL 安全 网络安全
网络安全的盾牌:漏洞防御与信息加密技术
【9月更文挑战第27天】在数字时代,网络安全和信息安全成为维护数据完整性、保密性和可用性的关键因素。本文将探讨网络安全漏洞的概念、成因及预防措施,同时深入讨论加密技术在保护信息安全中的作用。通过分析安全意识的重要性和提升方法,旨在为读者提供一套全面的网络安全知识框架,以增强个人和组织对抗网络威胁的能力。
39 5
|
2月前
|
存储 安全 算法
网络安全与信息安全:构建数字世界的坚固防线在数字化浪潮席卷全球的今天,网络安全与信息安全已成为维系社会秩序、保障个人隐私与企业机密的关键防线。本文旨在深入探讨网络安全漏洞的成因与影响,解析加密技术如何筑起数据安全的屏障,并强调提升公众安全意识的重要性,共同绘制一幅数字时代安全防护的蓝图。
本文聚焦网络安全与信息安全领域,通过剖析网络安全漏洞的多样形态及其背后成因,揭示其对个人、企业乃至国家安全的潜在威胁。随后,详细阐述了加密技术的原理、分类及应用,展现其在保护数据安全方面的核心作用。最后,强调了提升全民网络安全意识的紧迫性,提出具体策略与建议,旨在构建一个更加安全、可靠的数字环境。
|
1月前
|
人工智能 安全 算法
5G 网络中的加密:守护你的数据安全
5G 网络中的加密:守护你的数据安全
73 0
|
2月前
|
安全 算法 数据安全/隐私保护
深度揭秘!Python加密技术的背后,AES与RSA如何守护你的数据安全
【9月更文挑战第10天】随着数字化时代的到来,数据安全成为企业和个人面临的重大挑战。Python 作为功能强大的编程语言,在数据加密领域扮演着重要角色。AES 和 RSA 是两种主流加密算法,分别以对称和非对称加密方式保障数据安全。AES(Advanced Encryption Standard)因其高效性和安全性,在数据加密中广泛应用;而 RSA 则利用公钥和私钥机制,在密钥交换和数字签名方面表现卓越。
81 3