Page 1 of 1

AWS 负责云的安全 客户负责云端的安全性

Posted: Mon Feb 10, 2025 4:03 am
by Bappy11
AWS 在 RDS 上支持 PostgreSQL 9.4 至 12 版本,在 Aurora 上支持 9.6 至 11 版本。许多组织正在迁移到 PostgreSQL RDS 或 Aurora,以利用可用性、可扩展性、性能等,并以异构或同构迁移的方式进行。

安全性与合规性是 AWS 和客户共同的责任:



WS RDS 和 Aurora Security 最佳害虫防治实践
在处理云中的数据时,安全性是一个关键方面。数据泄露或数据隐私在当今世界并不是令人惊讶的话题,仅在 2019 年的前六个月,就有 41 亿条记录在数据泄露中被曝光。当考虑保护 AWS 中的 PostgreSQL RDS 或 Aurora 时,以下是作为优先事项想到的十大要点。让我们逐一介绍一下。

1.具有私有子网的数据库子网组:

创建 RDS 时,DB 子网组是强制配置,每个 DB 子网组应在每个 AWS 区域中至少 日本电报数据 有两个可用区中都有子网。确保这些子网是私有的,除非根据用例明确需要从公共网络访问 RDS 数据库。

快速验证的方式是:

互联网网关与 VPC/子网/路由无关。
未为 RDS 实例分配公共 IP。



2.管理安全组:

VPC 安全组就像子网级别的防火墙,用于控制对 VPC 中数据库实例的访问。它在管理谁可以访问 RDS 实例方面发挥着重要作用。


使用应用服务器的安全组名称,而不是单个 IP 地址或 IP 地址范围。这将仅允许来自网络接口(及其相关
分配给该安全组的 Kubernetes 实例。
如果需要为特定服务器提供访问权限,则仅将该 IP 包含在安全组中,而不是该 IP 的范围。
避免授予桌面访问权限,建议使用 Baston 服务器进行 RDS 访问。应在堡垒主机上安装 PSQL 客户端或 pgAdmin 等工具,以满足数据库管理员的管理需求。
在 PostgreSQL 中,最佳做法是使用具有最低权限的定义角色来实现特定目的(即读取角色、数据修改角色、监控角色等)。



3.使用 IAM 数据库身份验证:

AWS RDS 和 Aurora 支持使用 IAM 用户或角色凭证对数据库进行身份验证。IAM 身份验证比传统身份验证方法更安全,因为:

创建数据库用户时无需生成密码。
使用 IAM 身份验证时必须使用 SSL,以确保传输中的数据已加密
由于令牌仅在 15 分钟内有效,因此会自动轮换令牌

请参阅我们的博客“ AWS IAM 针对 RDS 实例和 Aurora 集群进行身份验证”以了解更多信息。



4.启用加密并强制 SSL:

虽然数据泄露和网络安全漏洞越来越令人担忧,但使用云原生加密选项可以挽救局面。AWS 提供了各种选项来加密静态和传输中的数据。


静态加密:使用 AWS KMS 加密 RDS 和 Aurora 数据库。一旦数据库配置了加密,存储在存储层中的数据就会被加密。如果您使用加密存储,自动备份、只读副本和快照也会被加密。
传输中加密:PostgreSQL 原生支持 SSL 连接以加密客户端与服务器之间的通信。检查数据库实例配置中的force_ssl参数值。默认情况下,rds.force_ssl参数设置为 0(关闭)。如果rds.force_ssl参数设置为 1,则客户端需要使用 SSL/TLS 进行连接。如果您使用 pgBounce