Configure integrations
ggscout integrates with various secrets managers, CI/CD systems, and infrastructure components to collect and monitor secrets. This page covers how to configure and use integrations for secret discovery and monitoring.
Integration Modes
Sources can be configured with different operational modes:
read- Only collect data from the source (default)write- Only write data to the sourceread/write- Both collect data and write to the source
[sources.my-source]
type = "source_type"
mode = "read/write" # Supports both operations
Configuration File
ggscout configuration file uses the TOML format to describe:
- How ggscout will communicate with GitGuardian platform
- How to access the different secrets managers to collect secrets
Configuration example:
[gitguardian]
# SaaS US
endpoint = "https://api.gitguardian.com/v1"
# SaaS EU
# endpoint = "https://api.eu1.gitguardian.com/v1"
# Self-hosted
# endpoint = "https://my-gg-instance.com/exposed/v1"
api_token = "${GITGUARDIAN_API_KEY}"
[sources.my-hashicorp-vault]
# This lets ggscout know what source to contact
type = "hashicorpvault"
# And this lets ggscout know how to contact it
vault_address = "${HASHICORP_VAULT_ADDRESS}"
auth.auth_mode = "token"
auth.token = "${HASHICORP_VAULT_TOKEN}"
# Many vaults support secret versioning. Set this to false if you only
# want to collect the latest version of the vault secrets
fetch_all_versions = true
# Allow ggscout instance to read from and write to that vault
mode = "read/write" # "read" and "write" are other possible values
# Configure another vault to collect here
# [sources.my-other-vault]
# type = "gcpsecretmanager"
The config file supports reading environment variables ("${GITGUARDIAN_API_KEY}") instead of raw values.
You can set these variables in a .env file:
GITGUARDIAN_API_KEY=<your-gitguardian-api-key>
HASHICORP_VAULT_ADDRESS=<your-vault-url>
HASHICORP_VAULT_TOKEN=<your-vault-token>
Please refer to Secrets Managers section to properly configure the collection of secrets.
Supported Integration Types
ggscout supports multiple integration types across different categories. The table below shows all available integrations and their capabilities:
| Integration Type | Integration Name | Type Identifier | Write Support |
|---|---|---|---|
| Secrets Managers | HashiCorp Vault | hashicorpvault |