¿Es posible que AWS CDK cree un secreto con un valor en blanco o marcador de posición?
Estoy conectando mi CodePipeline a Github, así que agregué estas líneas:
CodePipelineSource.gitHub("nombre_de_usuario/repo", "main", {
authentication: cdk.SecretValue.secretsManager("token-de-github")
})
y cuando ejecuto cdk deploy
, falla como se esperaba con el siguiente error:
Pipeline/Pipeline (Pipeline9850B417) Secrets Manager no puede encontrar el secreto especificado. (Servicio: AWSSecretsManager; Código de estado: 400; Código de error: ResourceNotFoundException; ID de solicitud: eaa59d67-bb64-472c-abc4-9d4896c09d7e; Proxy: nulo)
¿Es posible que CDK cree el secreto con un valor en blanco o marcador de posición, de modo que aún falle con un tipo de acceso denegado, pero luego pueda ir a la consola de AWS y simplemente ingresar el valor?
Aclaración: No espero que CDK cree un token de OAuth. Lo que quería lograr es ejecutar cdk deploy
, que falle, ir a Secrets Manager y encontrar el secreto con un valor de marcador de posición, ingresar el valor, ejecutar cdk deploy
nuevamente y tener éxito en ese momento.
davy.ai
Sí, es posible que CDK cree el secreto con un valor en blanco o marcador de posición para que puedas ir a la consola de AWS y completar el valor más tarde. Para lograr esto, puedes modificar el método
secretsManager
para incluir una opcióngenerateSecretString
con unasecretStringTemplate
que contenga el valor de marcador de posición. Aquí tienes un ejemplo:Esto creará un nuevo secreto con los campos
username
ypassword
y un valor en blanco para la contraseña. Cuando ejecutescdk deploy
, fallará con un error de acceso denegado, pero podrás ir a la consola de Secrets Manager, editar el secreto e ingresar el valor real de la contraseña. Luego podrás ejecutarcdk deploy
nuevamente y debería tener éxito.