Skip to main content
Soundcheck uses Azure Key Vault to securely store and manage sensitive configuration values. This provides centralized secret management with audit trails and secure access through managed identities.

Overview

The infrastructure stores sensitive environment variables in Azure Key Vault instead of directly in App Service settings:

Benefits


Secrets stored


Architecture


Configuration

App service Key Vault references

App Services use Key Vault references instead of direct values:

Terraform module structure


Network security

Private endpoint

Key Vault is only accessible through a private endpoint:
  • Subnet: Dedicated private endpoint subnet (10.0.2.0/24)
  • DNS Zone: privatelink.vaultcore.azure.net
  • NSG: HTTPS traffic only

Access control


Adding new secrets

1

Add secret resource

In modules/security/main.tf:
2

Add variable

In modules/security/variables.tf:
3

Add output

In modules/security/outputs.tf:
4

Update consuming module

Pass the secret URI to the frontend or backend module.

Troubleshooting

Verify managed identity has proper RBAC permissions:
Check private DNS zone is linked to VNet:
Soft-delete the existing secret:
  1. Verify Key Vault reference syntax is correct
  2. Check managed identity assignment on App Service
  3. Verify private endpoint connectivity

Vault names by environment


Best practices

  1. Never log secrets - Use Key Vault references, not direct values
  2. Regular rotation - Implement secret rotation procedures
  3. Minimal access - Apply principle of least privilege
  4. Monitor access - Enable Key Vault logging and alerts
  5. Backup - Ensure Key Vault has backup and recovery enabled