Automatische rotatie van cryptografische sleutels configureren in Azure Key Vault
Overzicht
Met geautomatiseerde cryptografische sleutelrotatie in Key Vault kunnen gebruikers Key Vault zo configureren dat automatisch een nieuwe sleutelversie met een opgegeven frequentie wordt gegenereerd. Als u rotatie wilt configureren, kunt u beleid voor sleutelrotatie gebruiken, dat voor elke afzonderlijke sleutel kan worden gedefinieerd.
We raden u aan om versleutelingssleutels ten minste om de twee jaar te roteren om te voldoen aan cryptografische best practices.
Zie Key Vault objecten, id's en versiebeheer voor meer informatie over de wijze waarop voor objecten in Key Vault versiebeheer wordt gebruikt.
Integratie met Azure-services
Deze functie maakt end-to-end zero-touch-rotatie mogelijk voor versleuteling-at-rest voor Azure-services met door de klant beheerde sleutel (CMK) die is opgeslagen in Azure Key Vault. Raadpleeg de specifieke documentatie van de Azure-service om te zien of de service end-to-end-rotatie omvat.
Zie voor meer informatie over gegevensversleuteling in Azure:
Prijzen
Er zijn extra kosten per geplande sleutelrotatie. Zie de pagina prijzen van Azure Key Vault voor meer informatie
Vereiste machtigingen
Key Vault-sleutelrotatiefunctie vereist sleutelbeheermachtigingen. U kunt een rol 'Key Vault Crypto Officer' toewijzen voor het beheren van rotatiebeleid en rotatie op aanvraag.
Notitie
Als u een machtigingsmodel voor toegangsbeleid gebruikt, moet u de sleutelmachtigingen 'Draaien', 'Roulatiebeleid instellen' en 'Rotatiebeleid ophalen' instellen om rotatiebeleid op sleutels te beheren.
Beleid voor sleutelrotatie
Met het sleutelrotatiebeleid kunnen gebruikers rotatie- en Event Grid-meldingen voor bijna verlopen configureren.
Beleidsinstellingen voor sleutelrotatie:
- Verlooptijd: verloopinterval van sleutel. Deze wordt gebruikt om de vervaldatum in te stellen op de zojuist gedraaide sleutel. Dit heeft geen invloed op een huidige sleutel.
- Ingeschakeld/uitgeschakeld: vlag voor het in- of uitschakelen van rotatie voor de sleutel
- Rotatietypen:
- Automatisch verlengen op een bepaald moment na het maken (standaard)
- Automatisch verlengen op een bepaald tijdstip voordat de vervaldatum verloopt. Hiervoor is 'Verlooptijd' vereist die is ingesteld voor het rotatiebeleid en de vervaldatum die is ingesteld op de sleutel.
- Rotatietijd: sleutelrotatie-interval, de minimumwaarde is zeven dagen na het maken en zeven dagen na verlooptijd
- Meldingstijd: gebeurtenisinterval voor bijna verlopen sleutel voor Event Grid-melding. Hiervoor is 'Verlooptijd' vereist die is ingesteld voor het rotatiebeleid en de vervaldatum die is ingesteld op de sleutel.
Belangrijk
Sleutelrotatie genereert een nieuwe sleutelversie van een bestaande sleutel met nieuw sleutelmateriaal. Doelservices moeten versieloze sleutel-URI gebruiken om automatisch te vernieuwen naar de nieuwste versie van de sleutel. Zorg ervoor dat uw oplossing voor gegevensversleuteling versie-URI met gegevens opslaat om te verwijzen naar hetzelfde sleutelmateriaal voor ontsleutelen/uitpakken als is gebruikt voor versleuteling/wrapbewerkingen om onderbreking van uw services te voorkomen. Alle Azure-services volgen momenteel dat patroon voor gegevensversleuteling.
Beleid voor sleutelrotatie configureren
Configureer sleutelrotatiebeleid tijdens het maken van de sleutel.
Configureer rotatiebeleid voor bestaande sleutels.
Azure-CLI
Sla sleutelrotatiebeleid op in een bestand. Voorbeeld van sleutelrotatiebeleid:
{
"lifetimeActions": [
{
"trigger": {
"timeAfterCreate": "P18M",
"timeBeforeExpiry": null
},
"action": {
"type": "Rotate"
}
},
{
"trigger": {
"timeBeforeExpiry": "P30D"
},
"action": {
"type": "Notify"
}
}
],
"attributes": {
"expiryTime": "P2Y"
}
}
Stel rotatiebeleid in voor een sleutel die eerder opgeslagen bestanden doorgeeft met behulp van de azure CLI az keyvault key rotation-policy update command.
az keyvault key rotation-policy update --vault-name <vault-name> --name <key-name> --value </path/to/policy.json>
Azure PowerShell
Rotatiebeleid instellen met behulp van azure Powershell Set-AzKeyVaultKeyRotationPolicy-cmdlet .
Set-AzKeyVaultKeyRotationPolicy -VaultName <vault-name> -KeyName <key-name> -ExpiresIn (New-TimeSpan -Days 720) -KeyRotationLifetimeAction @{Action="Rotate";TimeAfterCreate= (New-TimeSpan -Days 540)}
Rotatie op aanvraag
Sleutelrotatie kan handmatig worden aangeroepen.
Portal
Klik op Nu draaien om de draaiing aan te roepen.
Azure-CLI
Gebruik azure CLI az keyvault key rotate command om de sleutel te draaien.
az keyvault key rotate --vault-name <vault-name> --name <key-name>
Azure PowerShell
Gebruik de Cmdlet Azure PowerShell Invoke-AzKeyVaultKeyRotation .
Invoke-AzKeyVaultKeyRotation -VaultName <vault-name> -Name <key-name>
Melding over bijna verlopen van sleutel configureren
Configuratie van vervaldatummelding voor event grid-sleutel bijna verlopen gebeurtenis. Als geautomatiseerde rotatie niet kan worden gebruikt, zoals wanneer een sleutel wordt geïmporteerd uit lokale HSM, kunt u een melding voor bijna verlopen configureren als herinnering voor handmatige rotatie of als trigger voor aangepaste geautomatiseerde rotatie via integratie met Event Grid. U kunt een melding configureren met dagen, maanden en jaren voordat de vervaldatum wordt geactiveerd om een bijna verlopende gebeurtenis te activeren.
Zie Azure Key Vault als Event Grid-bron voor meer informatie over Event Grid-meldingen in Key Vault
Sleutelrotatie configureren met ARM-sjabloon
Sleutelrotatiebeleid kan ook worden geconfigureerd met BEHULP van ARM-sjablonen.
Notitie
Hiervoor is de rol Key Vault-inzender vereist voor Key Vault die is geconfigureerd met Azure RBAC om de sleutel te implementeren via het beheervlak.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"vaultName": {
"type": "String",
"metadata": {
"description": "The name of the key vault to be created."
}
},
"keyName": {
"type": "String",
"metadata": {
"description": "The name of the key to be created."
}
},
"rotatationTimeAfterCreate": {
"defaultValue": "P18M",
"type": "String",
"metadata": {
"description": "Time duration to trigger key rotation. i.e. P30D, P1M, P2Y"
}
},
"expiryTime": {
"defaultValue": "P2Y",
"type": "String",
"metadata": {
"description": "The expiry time for new key version. i.e. P90D, P2M, P3Y"
}
},
"notifyTime": {
"defaultValue": "P30D",
"type": "String",
"metadata": {
"description": "Near expiry Event Grid notification. i.e. P30D"
}
}
},
"resources": [
{
"type": "Microsoft.KeyVault/vaults/keys",
"apiVersion": "2021-06-01-preview",
"name": "[concat(parameters('vaultName'), '/', parameters('keyName'))]",
"location": "[resourceGroup().location]",
"properties": {
"vaultName": "[parameters('vaultName')]",
"kty": "RSA",
"rotationPolicy": {
"lifetimeActions": [
{
"trigger": {
"timeAfterCreate": "[parameters('rotatationTimeAfterCreate')]",
"timeBeforeExpiry": ""
},
"action": {
"type": "Rotate"
}
},
{
"trigger": {
"timeBeforeExpiry": "[parameters('notifyTime')]"
},
"action": {
"type": "Notify"
}
}
],
"attributes": {
"expiryTime": "[parameters('expiryTime')]"
}
}
}
}
]
}
Beleidsbeheer voor sleutelrotatie configureren
Met behulp van de Azure Policy-service kunt u de levenscyclus van de sleutel beheren en ervoor zorgen dat alle sleutels zijn geconfigureerd om binnen een opgegeven aantal dagen te draaien.
Beleidsdefinitie maken en toewijzen
- Navigeer naar beleidsresource
- Selecteer Toewijzingen onder Ontwerpen aan de linkerkant van de pagina Azure Policy.
- Selecteer Beleid toewijzen boven aan de pagina. Deze knop wordt geopend op de pagina Beleidstoewijzing.
- Voer de volgende gegevens in:
- Definieer het bereik van het beleid door het abonnement en de resourcegroep te kiezen waarvoor het beleid wordt afgedwongen. Selecteer door op de knop met drie punten in het veld Bereik te klikken.
- Selecteer de naam van de beleidsdefinitie: 'Sleutels moeten een rotatiebeleid hebben om ervoor te zorgen dat hun rotatie binnen het opgegeven aantal dagen na het maken is gepland. '
- Ga naar het tabblad Parameters boven aan de pagina.
- Stel het maximum aantal dagen in dat de parameter moet worden gedraaid op het gewenste aantal dagen, bijvoorbeeld 730.
- Definieer het gewenste effect van het beleid (Controle of Uitgeschakeld).
- Vul eventuele extra velden in. Navigeer door de tabbladen die op de knoppen Vorige en Volgende onder aan de pagina klikken.
- Selecteer Controleren en maken.
- Selecteer Maken.
Zodra het ingebouwde beleid is toegewezen, kan het tot 24 uur duren voordat de scan is voltooid. Nadat de scan is voltooid, ziet u de nalevingsresultaten zoals hieronder.