Secrets Manager Integration
The Agent CLI supports integrating with all major secrets management systems, allowing you to securely store sensitive credentials outside of the bigeye_agent.yml configuration file.
How It Works
- Set up a secrets manager integration during the initial
./bigeye-agent installcommand or afterwards by running./bigeye-agent configure secrets_manager. - After configuring, the next time you add a connection via
./bigeye-agent add-connector, the Agent CLI will prompt you for the secret reference rather than the password. - For each secret reference, the CLI:
- Connects to your configured secrets manager
- Fetches the secret value
- Encrypts the value using the Bigeye agent's encryption
- Writes the encrypted value to the appropriate configuration file
- The secret reference metadata is saved in
bigeye_agent.ymlfor future updates. - The actual secret value is never stored in plain text in
bigeye_agent.yml. - If you rotate passwords in the secrets manager, run
./bigeye-agent sync --refresh-credentialsto re-fetch and re-encrypt all secrets.
Configuring a Secrets Manager
# During initial setup
./bigeye-agent install
# Or configure/reconfigure at any time
./bigeye-agent configure secrets_managerSupported Secrets Managers
AWS Secrets Manager
secrets_manager:
type: aws_secrets_manager
region: us-east-1 # Optional, defaults to us-east-1Authentication uses AWS credentials from:
- Environment variables:
AWS_ACCESS_KEY_ID,AWS_SECRET_ACCESS_KEY,AWS_SESSION_TOKEN - IAM role
- AWS CLI configuration (
~/.aws/credentials)
Azure Key Vault
secrets_manager:
type: azure_key_vault
vault_url: https://my-keyvault.vault.azure.net/Authentication uses Azure credentials from:
- Environment variables:
AZURE_CLIENT_ID,AZURE_CLIENT_SECRET,AZURE_TENANT_ID - Managed Identity (for Azure VMs, App Services, etc.)
- Azure CLI authentication
GCP Secret Manager
secrets_manager:
type: gcp_secret_manager
project_id: my-gcp-project # RequiredAuthentication uses GCP credentials from:
- Environment variable:
GOOGLE_APPLICATION_CREDENTIALS(path to service account JSON) - Application Default Credentials (for GCE, Cloud Run, Cloud Functions, etc.)
HashiCorp Vault
secrets_manager:
type: hashicorp_vault
vault_addr: https://vault.example.com:8200 # Required (or use VAULT_ADDR env var)
namespace: my-namespace # Optional, for Vault Enterprise
mount_point: secret # Optional, defaults to 'secret' for KV v2Authentication uses Vault credentials from:
- Environment variable:
VAULT_TOKEN - AppRole:
VAULT_ROLE_IDandVAULT_SECRET_IDenvironment variables
Refreshing Credentials
After rotating passwords in your secrets manager:
./bigeye-agent sync --refresh-credentialsThis re-fetches all secret references from the secrets manager, re-encrypts them, and updates the agent configuration files.
Updated 3 months ago
