Going beyond Encryption, explicit credential management will provide credentials to your builds for a brief amount of time, without being persisted anywhere. It also allows for credentials to be rotated and managed external to the pipeline or team, and prevents them from being revealed by
Credential management works by replacing the credentials with
((vars)) in your pipeline or task config. When the Concourse is about to run the step or
check that is configured with vars, it will resolve them by fetching the values from the credential manager. If the values are not present, the action will error.
The following configurations can be parameterized with a credential manager:
paramson a task step in a pipeline
Where these values are looked up and how the credential manager is configured depends on the backend. Consult the relevant section below for whichever backend you want to use.
Concourse currently supports the following credential managers:
- 126.96.36.199 The Vault credential manager
- 188.8.131.52 The CredHub credential manager
- 184.108.40.206 The AWS SSM credential manager
- 220.127.116.11 The AWS Secrets Manager credential manager
Common Configuration Parameters
When a request to the credential manager fails due to an intermittent error (e.g. a timeout or
connection refused), Concourse will automatically try the request again up to 5 times before giving up. After all attempts fail, the error will be surfaced in the UI for the resource check or build step that initiated the request.
The retry logic can be configured by specifying the following env on the
CONCOURSE_SECRET_RETRY_ATTEMPTS=5 # how many times to try CONCOURSE_SECRET_RETRY_INTERVAL=10s # how long to wait between attempts