我正在使用 CDK 在 AWS 中设置代码管道。管道阶段需要从 github 下载源代码,因此使用 oauth 令牌来验证请求。在管道阶段设置值时,我希望能够从 AWS Parameter Store 访问令牌,而不是从 AWS Secret Manager 访问令牌。
有很多使用 Secret Manager 来执行此操作的示例。但是,CDK 项目中没有使用参数存储或以纯文本形式对令牌进行硬编码的示例。
我们使用 CDK 1.3.0 的 typescript。
我尝试将令牌存储在参数存储中。当存储为安全字符串时,您需要在检索值时另外指定版本。但是,我无法将其转换为在管道阶段SecretValue设置属性所需的值。oauthToken
从参数存储中获取值..
// get the secureString
const secureString = ssm.StringParameter.fromSecureStringParameterAttributes(construct,'MySecretParameter', {
parameterName: 'my-secure-parameter-name',
version: 1,
});
Run Code Online (Sandbox Code Playgroud)
我需要将 转换secretString为 aCDK.SecretValue然后用它来设置oauthToken. 我不知道该怎么做。
const sourceAction = new codepipelineactions.GitHubSourceAction({
actionName: 'Source',
owner: owner,
repo: repository,
oauthToken: githubOAuthAccessToken,
output: sourceOutput,
branch: branch,
trigger: codepipelineactions.GitHubTrigger.WEBHOOK,
});
Run Code Online (Sandbox Code Playgroud)
CDK 文档表示建议将令牌存储在 Secret …