Konfigurieren der automatischen Kryptografieschlüsselrotation in Azure Key Vault
Übersicht
Anhand der automatischen Kryptografieschlüsselrotation in Key Vault können Benutzer Key Vault so konfigurieren, dass in einem festgelegten Intervall automatisch eine neue Schlüsselversion generiert wird. Zum Konfigurieren der Rotation können Sie die Schlüsselrotationsrichtlinie verwenden, die für jeden einzelnen Schlüssel definiert werden kann.
Es wird empfohlen, Verschlüsselungsschlüssel mindestens alle zwei Jahre zu rotieren, um bewährte kryptografische Methoden zu befolgen.
Weitere Informationen zur Versionsverwaltung von Objekten in Key Vault finden Sie unter Objekte, Bezeichner und Versionsverwaltung.
Integration in Azure-Dienste
Dieses Feature ermöglicht End-to-End-Rotation ohne Benutzereingriff für die Verschlüsselung ruhender Daten für Azure-Dienste mit kundenseitig verwaltetem Schlüssel (CMK), der in Azure Key Vault gespeichert ist. In der Dokumentation der jeweiligen Azure-Dienste finden Sie Informationen dazu, ob der betreffende Dienst End-to-End-Rotation ermöglicht.
Weitere Informationen zur Datenverschlüsselung in Azure finden Sie unter folgenden Links:
Preise
Pro geplanter Schlüsselrotation fallen zusätzliche Kosten an. Weitere Informationen finden Sie auf der Seite Azure Key Vault-Preise.
Erforderliche Berechtigungen
Das Schlüsselrotationsfeature von Key Vault erfordert Berechtigungen für die Schlüsselverwaltung. Sie können die Rolle „Kryptografiebeauftragter für Schlüsseltresore“ zuweisen, um die Rotationsrichtlinie und Rotation bei Bedarf zu verwalten.
Weitere Informationen zur Verwendung des RBAC-Berechtigungsmodells von Key Vault und zum Zuweisen von Azure-Rollen finden Sie unter Verwenden von Azure RBAC zum Steuern des Zugriffs auf Schlüssel, Zertifikate und Geheimnisse.
Hinweis
Wenn Sie ein Berechtigungsmodell für Zugriffsrichtlinien verwenden, müssen Sie die Schlüsselberechtigungen „Rotieren“, Rotationsrichtlinie festlegen“ und „Rotationsrichtlinie abrufen“ festlegen, um die Rotationsrichtlinie für Schlüssel zu verwalten.
Richtlinie für Schlüsselrotation
Mit der Schlüsselrotationsrichtlinie können Benutzer Rotations- und Event Grid-Benachrichtigungen für fast abgelaufene Schlüssel konfigurieren.
Einstellungen der Richtlinie für Schlüsselrotation:
- Ablaufzeit: Das Schlüsselablaufintervall. Diese Angabe wird verwendet, um das Ablaufdatum für den neu rotierten Schlüssel festzulegen. Dieser Wert wirkt sich nicht auf einen aktuellen Schlüssel aus.
- Aktiviert/Deaktiviert: Flag zum Aktivieren oder Deaktivieren der Rotation für den Schlüssel.
- Rotationsarten:
- Automatisch erneuern zu einer bestimmten Zeit nach der Erstellung (Standardeinstellung).
- Automatisch erneuern zu einer bestimmten Zeit vor dem Ablauf. Dazu müssen „Ablaufzeit“ für die Rotationsrichtlinie und „Ablaufdatum“ für den Schlüssel festgelegt werden.
- Rotationszeit: Das Schlüsselrotationsintervall. Der Mindestwert ist sieben Tage ab Erstellung und sieben Tage vor der Ablaufzeit.
- Benachrichtigungszeit: Das Intervall für das Ereignis „Schlüssel fast abgelaufen“ für die Event Grid-Benachrichtigung. Dazu müssen „Ablaufzeit“ für die Rotationsrichtlinie und „Ablaufdatum“ für den Schlüssel festgelegt werden.
Wichtig
Bei der Schlüsselrotation wird eine neue Schlüsselversion eines vorhandenen Schlüssels mit neuem Schlüsselmaterial generiert. Zieldienste sollten versionslose Schlüssel-URIs verwenden, damit ein automatisches Update auf die neueste Schlüsselversion erfolgt. Stellen Sie sicher, dass Ihre Datenverschlüsselungslösung einen Schlüssel-URI mit Versionsverwaltung verwendet, dessen Daten auf das gleiche Schlüsselmaterial für das Entschlüsseln/Aufheben der Umschließung wie für das Verschlüsseln/Umschließen verweisen, um Dienstunterbrechungen zu vermeiden. Alle Azure-Dienste folgen derzeit diesem Muster für die Datenverschlüsselung.
Konfigurieren der Schlüsselrotationsrichtlinie
Konfigurieren Sie die Schlüsselrotationsrichtlinie während der Schlüsselerstellung.
Konfigurieren Sie die Rotationsrichtlinie für vorhandene Schlüssel.
Die Azure CLI
Speichern Sie die Richtlinie für Schlüsselrotation in einer Datei. Beispiel für eine Richtlinie für Schlüsselrotation:
{
"lifetimeActions": [
{
"trigger": {
"timeAfterCreate": "P18M",
"timeBeforeExpiry": null
},
"action": {
"type": "Rotate"
}
},
{
"trigger": {
"timeBeforeExpiry": "P30D"
},
"action": {
"type": "Notify"
}
}
],
"attributes": {
"expiryTime": "P2Y"
}
}
Legen Sie mithilfe des Azure CLI-Befehls az keyvault key rotation-policy update die Rotationsrichtlinie für einen Schlüssel fest, der eine zuvor gespeicherte Datei übergibt.
az keyvault key rotation-policy update --vault-name <vault-name> --name <key-name> --value </path/to/policy.json>
Azure PowerShell
Legen Sie die Rotationsrichtlinie mithilfe des Azure Powershell-Cmdlets Set-AzKeyVaultKeyRotationPolicy fest.
Set-AzKeyVaultKeyRotationPolicy -VaultName <vault-name> -KeyName <key-name> -ExpiresIn (New-TimeSpan -Days 720) -KeyRotationLifetimeAction @{Action="Rotate";TimeAfterCreate= (New-TimeSpan -Days 540)}
Rotation bei Bedarf
Schlüsselrotation kann manuell aufgerufen werden.
Portal
Klicken Sie auf „Jetzt rotieren“, um die Rotation aufzurufen.
Azure CLI
Verwenden Sie den Azure CLI-Befehl az keyvault key rotate zum Rotieren des Schlüssels.
az keyvault key rotate --vault-name <vault-name> --name <key-name>
Azure PowerShell
Verwenden Sie das Azure PowerShell-Cmdlet Invoke-AzKeyVaultKeyRotation.
Invoke-AzKeyVaultKeyRotation -VaultName <vault-name> -Name <key-name>
Konfigurieren der Benachrichtigung bei fast abgelaufenem Schlüssel
Konfiguration der Ablaufbenachrichtigung für das Event Grid-Ereignis „Schlüssel fast abgelaufen“. Wenn eine automatisierte Rotation nicht möglich ist – beispielsweise, wenn ein Schlüssel aus einem lokalen HSM importiert wurde –, können Sie eine Benachrichtigung bei nahendem Ablauf konfigurieren. Diese dient als Erinnerung an die manuelle Rotation oder als Trigger für eine benutzerdefinierte automatisierte Rotation über die Integration in Event Grid. Sie können für die Benachrichtigung Tage, Monate und Jahre vor Ablauf konfigurieren, um das Ereignis „Fast abgelaufen“ auszulösen.
Weitere Informationen zu Event Grid-Benachrichtigungen in Key Vault finden Sie unter Azure Key Vault als Event Grid-Quelle.
Konfigurieren von Schlüsselrotation mit einer ARM-Vorlage
Die Schlüsselrotationsrichtlinie kann auch mithilfe von ARM-Vorlagen konfiguriert werden.
Hinweis
Dies setzt voraus, dass die Rolle „Key Vault-Mitwirkender“ mit Azure RBAC konfiguriert wurde, um den Schlüssel über die Verwaltungsebene bereitstellen zu können.
{
"$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')]"
}
}
}
}
]
}
Konfigurieren der Schlüsselrotations-Richtliniengovernance
Mithilfe des Azure Policy-Diensts können Sie den Schlüssellebenszyklus steuern und sicherstellen, dass alle Schlüssel so konfiguriert sind, dass sie innerhalb einer angegebenen Anzahl von Tagen rotiert werden.
Erstellen und Zuweisen einer Richtliniendefinition
- Navigieren zur Richtlinienressource
- Wählen Sie links auf der Seite „Azure Policy“ unter Erstellung die Option Zuweisungen.
- Wählen Sie oben auf der Seite Richtlinie zuweisen aus. Über diese Schaltfläche gelangen Sie zur Seite „Richtlinienzuweisung“.
- Geben Sie die folgenden Informationen ein:
- Definieren Sie den Bereich der Richtlinie, für den die Richtlinie durchgesetzt werden soll, indem Sie das Abonnement und die Ressourcengruppe auswählen. Wählen Sie die Option aus, indem Sie im FeldBereich auf die Schaltfläche mit den drei Punkten klicken.
- Wählen Sie den Namen der Richtliniendefinition „Schlüssel sollten eine Rotationsrichtlinie haben, die sicherstellt, dass ihre Rotation innerhalb der angegebenen Anzahl von Tagen nach der Erstellung geplant ist“ aus.
- Gehen Sie am oberen Seitenrand zur Registerkarte Parameter.
- Legen Sie den Parameter Maximale Anzahl von zu routierenden Tagen auf die gewünschte Anzahl von Tagen fest, z. B. 730.
- Definieren Sie die gewünschte Auswirkung der Richtlinie (Überprüfung oder Deaktiviert).
- Füllen Sie alle zusätzlichen Felder aus. Navigieren Sie durch die Registerkarten, indem Sie unten auf der Seite auf die Schaltflächen Zurück und Weiter klicken.
- Klicken Sie auf Überprüfen + erstellen.
- Klicken Sie auf Erstellen.
Nach dem Hinzufügen einer integrierten Richtlinie kann die Überprüfung bis zu 24 Stunden dauern. Nach Abschluss der Überprüfung werden Konformitätsergebnisse wie die folgenden angezeigt.
Ressourcen
- Überwachen von Key Vault mit Azure Event Grid
- Verwenden von Azure RBAC zum Steuern des Zugriffs auf Schlüssel, Zertifikate und Geheimnisse
- Azure-Datenverschlüsselung ruhender Daten
- Azure Storage-Verschlüsselung
- Azure-Datenträgerverschlüsselung
- Automatische Schlüsselrotation für transparente Datenverschlüsselung