Third-Party Integration
Architecture
Store credentials for external service integrations:
- Payment gateways - Stripe, PayPal, Square API keys
- Email providers - SendGrid, SES, Mailgun credentials
- Analytics services - Segment, Mixpanel, Amplitude tokens
- OAuth providers - Google, GitHub, Auth0 client secrets
When to Use
Use this pattern when your application requires:
- Integration with third-party APIs and services
- Secure storage of vendor-provided credentials
- Regular rotation of API keys and tokens
- Centralized management of integration secrets
Example Implementation
module "stripe_credentials" {
source = "registry.patterneddesigns.ca/patterneddesigns/secrets-manager/aws"
version = "2.1.0"
name = "prod/integrations/stripe"
secret_string = jsonencode({
publishable_key = var.stripe_publishable_key
secret_key = var.stripe_secret_key
webhook_secret = var.stripe_webhook_secret
})
kms_key_id = module.kms.key_id
}
module "oauth_credentials" {
source = "registry.patterneddesigns.ca/patterneddesigns/secrets-manager/aws"
version = "2.1.0"
name = "prod/integrations/google-oauth"
secret_string = jsonencode({
client_id = var.google_client_id
client_secret = var.google_client_secret
})
kms_key_id = module.kms.key_id
}