You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AWS CDK v2:因type参数已弃用,如何加密SSM的StringParameter?

CDK v2下用SSM Parameter Store创建加密参数的方案

当然可以实现,不需要依赖第三方构造,用AWS CDK v2原生模块就能搞定,以下是两种可行方式:

方式1:使用StringParameter指定加密类型(兼容弃用参数)

虽然StringParameter的type参数被标记为弃用,但目前仍能正常使用,直接指定ParameterType.SECURE_STRING即可创建加密参数:

import * as cdk from 'aws-cdk-lib';
import * as ssm from 'aws-cdk-lib/aws-ssm';

const stack = new cdk.Stack(app, 'SecureParamDemoStack');

// 创建加密的SSM字符串参数
new ssm.StringParameter(stack, 'ApiKeyParam', {
  parameterName: '/prod/myapp/api-key',
  stringValue: 'your-secret-key-here',
  type: ssm.ParameterType.SECURE_STRING,
  // 可选:指定自定义KMS密钥,默认使用AWS管理的SSM密钥
  // kmsKey: yourCustomKmsKey,
});

方式2:使用SecureStringParameter构造(推荐,无弃用警告)

AWS CDK v2提供了专门的SecureStringParameter构造,用来创建加密参数,完全规避弃用警告:

// 创建加密参数(推荐方式)
new ssm.SecureStringParameter(stack, 'DbPasswordParam', {
  parameterName: '/prod/myapp/db-password',
  secretValue: cdk.SecretValue.unsafePlainText('your-db-secret'),
  // 可选:绑定自定义KMS密钥
  // kmsKey: yourCustomKmsKey,
});

额外说明

  • 两种方式创建的参数都会自动加密存储,默认使用AWS托管的KMS密钥,也可以指定自己的KMS密钥提升安全性。
  • 如果需要引用已存在的加密SSM参数,可使用SecureStringParameter.fromSecureStringParameterAttributes方法。
  • 用SSM Parameter Store存储密钥相比SecretsManager成本更低,完全满足密钥存储的基础需求。

内容的提问来源于stack exchange,提问作者Ryan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.29 16:43:24