Integração ADF com Azure Key Vault: eliminar credenciais hardcoded
João Barros
23 de April de 2026
1 min de leitura
Por padrão, o Azure Data Factory armazena passwords de Linked Services encriptadas internamente. Mas a melhor prática é referenciar segredos do Azure Key Vault — as credenciais nunca ficam no ADF e a rotação de passwords não exige alterar Linked Services.
Configurar acesso do ADF ao Key Vault
// 1. Activar Managed Identity no ADF (automático)
// 2. Dar permissão ao Key Vault:
az role assignment create \
--role "Key Vault Secrets User" \
--assignee "$(az datafactory show -n adf-bconcepts -g rg-data --query identity.principalId -o tsv)" \
--scope "/subscriptions/.../vaults/kv-bconcepts-prod"
Linked Service com referência ao Key Vault
// No ADF Studio: Linked Service → Azure SQL Database
Authentication: SQL Authentication
User name: svc_adf_reader
Password:
[✓] Azure Key Vault
Key Vault Linked Service: LS_KeyVault
Secret name: SqlServer-ADF-Password
Secret version: (deixar em branco → sempre última versão)
Linked Service do Key Vault
// Criar primeiro o LS do Key Vault em si
Type: Azure Key Vault
Base URL: https://kv-bconcepts-prod.vault.azure.net/
Authentication: Managed Identity
// O ADF usa a sua própria Managed Identity para aceder ao vault
Verificar e testar
// Após configuração:
// ADF Studio → Linked Service → Test Connection
// Se a Managed Identity tiver permissão e o segredo existir → Connection successful
// Rota de auditoria no Key Vault:
az monitor activity-log list --resource-id /subscriptions/.../vaults/kv-bconcepts-prod \
--query "[?operationName.value == 'Microsoft.KeyVault/vaults/secrets/getSecret/action']"
Conclusão
Nunca guarde passwords directamente em Linked Services de produção. A integração ADF + Key Vault + Managed Identity é o padrão de segurança mínimo para pipelines enterprise — sem passwords, sem rotação manual, com auditoria automática de cada acesso.