如何为AWS CDK创建的Aurora数据库启用Require SSL强制传输加密?
如何通过AWS CDK为Aurora PostgreSQL集群开启强制SSL
当然可以配置强制SSL来实现传输中加密,解决安全监测的告警。你需要通过自定义参数组开启rds.force_ssl参数,再将其关联到你的Aurora集群上,具体修改如下:
首先,创建一个匹配你引擎版本的Aurora PostgreSQL参数组,添加强制SSL的配置:
// 创建自定义参数组,开启强制SSL const postgresParamGroup = new rds.ParameterGroup(scope, 'PostgresParamGroup', { engine: rds.DatabaseClusterEngine.auroraPostgres({ version: rds.AuroraPostgresEngineVersion.VER_13_7 }), parameters: { 'rds.force_ssl': '1' } });
然后修改你的集群创建代码,将参数组关联到parameterGroup属性中:
const cluster = new rds.DatabaseCluster(scope, 'TheDB', { defaultDatabaseName: dbName, engine: rds.DatabaseClusterEngine.auroraPostgres({ version: rds.AuroraPostgresEngineVersion.VER_13_7 }), credentials: { username: dbUser, password: pgPasswordSecret.secretValue, }, instanceProps: { securityGroups: [securityGroup], instanceType: primaryPostgresInstanceType(), vpcSubnets: { subnetType: ec2.SubnetType.PRIVATE_WITH_NAT, }, vpc, }, storageEncrypted: true, backup: { retention: Duration.days(15), }, // 新增:关联自定义参数组 parameterGroup: postgresParamGroup, })
关键说明
rds.force_ssl=1是Aurora PostgreSQL用来强制所有客户端连接使用SSL的参数,配置后未通过SSL的连接会被拒绝- 必须使用自定义参数组,因为AWS提供的默认参数组不允许修改参数
- 参数组的引擎版本必须和集群的引擎版本保持一致,否则无法关联
内容的提问来源于stack exchange,提问作者Daniel
相关产品推荐
相关产品推荐

