Gestion des cles
Ce guide explique comment gerer les cles de chiffrement.
Bonnes pratiques
- Ne jamais stocker les cles en clair dans le code
- Utiliser un gestionnaire de secrets (Azure Key Vault, AWS Secrets Manager)
- Regenerer les cles periodiquement
- Separer cles de test et production
Stockage securise
// Exemple avec Azure Key Vault
public class KeyVaultKeyManager
{
private readonly SecretClient _client;
public KeyVaultKeyManager(string vaultUri)
{
_client = new SecretClient(new Uri(vaultUri), new DefaultAzureCredential());
}
public async Task<Keys> GetEncryptionKeys(string keyName)
{
var keySecret = await _client.GetSecretAsync($"{keyName}-key");
var ivSecret = await _client.GetSecretAsync($"{keyName}-iv");
return new Keys
{
Base64Key = keySecret.Value.Value,
Base64IV = ivSecret.Value.Value
};
}
}