CDK RDS 公共可访问数据库

Jon*_*mek 1 amazon-rds amazon-vpc aws-cdk

我想用 cdk 创建一个可公开访问的数据库(dev db)。我知道如何通过 Web UI 做到这一点。我需要将公共可访问性设置为 true 并允许我的 IP 作为安全组的入站。


        const vpc = new ec2.Vpc(this, 'Vpc')

        const postgres = new rds.DatabaseInstance(this, 'Postgres', {
            engine: rds.DatabaseInstanceEngine.POSTGRES,
            instanceClass: ec2.InstanceType.of(ec2.InstanceClass.BURSTABLE2, ec2.InstanceSize.MICRO),
            masterUsername: 'postgres',
            vpc,
        })
Run Code Online (Sandbox Code Playgroud)

这是我目前的状态,它工作正常,但没有公共访问权限

Jon*_*mek 8

        const vpc = new ec2.Vpc(this, 'Vpc')

        const postgres = new rds.DatabaseInstance(this, 'Postgres', {
            engine: rds.DatabaseInstanceEngine.POSTGRES,
            instanceClass: ec2.InstanceType.of(ec2.InstanceClass.BURSTABLE2, ec2.InstanceSize.MICRO),
            masterUsername: 'postgres',
            vpc,
            vpcPlacement: { subnetType: ec2.SubnetType.PUBLIC }
        })

        postgres.connections.allowFromAnyIpv4(ec2.Port.tcp(5432))
Run Code Online (Sandbox Code Playgroud)

vpcPlacement: { subnetType: ec2.SubnetType.PUBLIC }将公共访问设置为 true postgres.connections.allowFromAnyIpv4(ec2.Port.tcp(5432))允许来自端口 5432 的入站流量