Konfigurace automatické obměně kryptografických klíčů v Azure Key Vault

Automatizací rotace kryptografických klíčů v Key Vault můžete nastavit Key Vault tak, aby automaticky vytvořila novou verzi klíče ve zvolené frekvenci. K nastavení rotace použijte zásadu rotace klíčů, kterou můžete definovat pro každý jednotlivý klíč.

Pokud chcete postupovat podle kryptografických osvědčených postupů, obměňte šifrovací klíče alespoň každých dva roky.

Další informace o tom, jak Key Vault spravuje verze objektů, viz Key Vault objekty, identifikátory a správa verzí. Pro komplexní porozumění konceptům automatického rotování napříč různými typy prostředků v Azure Key Vault najdete v tématu Porozumění automatickému rotování v Azure Key Vault.

Integrace se službami Azure

Tato funkce umožňuje end-to-end automatizovanou rotaci pro šifrování při uložení se službami Azure s klíčem spravovaným zákazníkem (CMK) uloženým v Azure Key Vault. Zkontrolujte konkrétní dokumentaci ke službě Azure a zjistěte, jestli služba podporuje kompletní obměnu.

Poznámka:

Při obměně klíčů spravovaných zákazníkem, které Azure služby používají, se doba, kterou každá služba rozpozná a použije novou verzi klíče, se liší (od jedné hodiny do 24 hodin nebo déle). Pokyny k bezpečnému zakázání staré verze klíče po obměně najdete v konkrétní dokumentaci ke službě Azure.

Další informace o šifrování dat v Azure najdete tady:

Stanovení cen

Za každou plánovanou obměnu klíčů se účtuje dodatečný poplatek. Další informace najdete na stránce s cenami Azure Key Vault.

Požadována oprávnění

Funkce obměně klíčů Key Vault vyžaduje oprávnění ke správě klíčů. Přiřaďte roli Key Vault Crypto Officer ke správě zásad rotace a rotaci na vyžádání.

Další informace o použití Azure RBAC pro Key Vault a přiřazení rolí Azure najdete v tématu Použít Azure RBAC k řízení přístupu ke klíčům, certifikátům a tajným kódům.

Poznámka:

Pokud používáte model oprávnění zásad přístupu, nastavte oprávnění klíče Otočit, Nastavit zásady rotace a Získat zásadu rotace pro správu zásad rotace u klíčů.

Zásady obměně klíčů

Zásady rotace klíčů umožňují nakonfigurovat rotaci a oznámení Event Gridu pro oznámení o blížící se expiraci.

Nastavení zásad rotace klíčů:

  • Doba vypršení platnosti: interval vypršení platnosti klíče. Nastaví datum vypršení platnosti u nově obměňovaného klíče. Nemá vliv na aktuální klíč.
  • Povoleno/zakázáno: Přepínač pro povolení nebo zakázání otáčení klíče.
  • Typy otočení:
    • Automatické prodlužování v daném okamžiku po vytvoření (výchozí).
    • Automatické prodlužování v daném čase před vypršením platnosti. Vyžaduje nastavený čas vypršení platnosti v zásadách obměny a nastavení data vypršení platnosti na klíči.
  • Doba otáčení: interval otočení klíče. Minimální hodnota je sedm dnů od vytvoření a sedm dnů od vypršení platnosti.
  • Čas oznámení: Klíčový interval události, který se blíží vypršení platnosti, pro oznámení Event Gridu. Vyžaduje nastavený čas vypršení platnosti v zásadách obměny a nastavení data vypršení platnosti na klíči.

Důležité

Rotace klíčů generuje novou verzi existujícího klíče s novým materiálem. Cílové služby by měly používat identifikátor URI klíče bez verzí k automatické aktualizaci na nejnovější verzi klíče. Ujistěte se, že vaše řešení šifrování dat ukládá verzovaný URI klíče spolu s daty tak, aby ukazoval na stejný materiál klíče pro operace dešifrování a odbalení, aby se zabránilo přerušení vašich služeb. Všechny služby Azure aktuálně sledují tento model šifrování dat.

Rotace klíčů přeobalí datové šifrovací klíče (DEK) s novou verzí klíče – nešifruje znovu původní data. Staré i nové verze klíčů musí zůstat povolené, dokud se nedokončí opětovné zabalení, protože stávající data zůstanou zašifrovaná v deks zabalených starou verzí klíče.

Konfigurace zásad rotace

Konfigurace zásad obměně klíčů

Nakonfigurujte zásadu rotace klíčů během vytváření klíče.

Konfigurace rotace během vytváření klíče

Nakonfigurujte zásady rotace u existujících klíčů.

Konfigurujte rotaci u existujícího klíče

Azure CLI

Uložte zásadu otáčení klíčů do souboru. Tady je příklad zásady obměně klíčů:

{
  "lifetimeActions": [
    {
      "trigger": {
        "timeAfterCreate": "P18M",
        "timeBeforeExpiry": null
      },
      "action": {
        "type": "Rotate"
      }
    },
    {
      "trigger": {
        "timeBeforeExpiry": "P30D"
      },
      "action": {
        "type": "Notify"
      }
    }
  ],
  "attributes": {
    "expiryTime": "P2Y"
  }
}

Nastavte zásadu otáčení klíče pomocí dříve uloženého souboru s použitím příkazu Azure CLI az keyvault key rotation-policy update.

az keyvault key rotation-policy update --vault-name <vault-name> --name <key-name> --value </path/to/policy.json>

Azure PowerShell

Nastavte zásady rotace klíče pomocí rutiny Azure PowerShell Set-AzKeyVaultKeyRotationPolicy.

Set-AzKeyVaultKeyRotationPolicy -VaultName <vault-name> -KeyName <key-name> -ExpiresIn (New-TimeSpan -Days 720) -KeyRotationLifetimeAction @{Action="Rotate";TimeAfterCreate= (New-TimeSpan -Days 540)}

Rotace na vyžádání

Můžete ručně provést rotaci klíčů.

Portal

Vyberte Otočit nyní k zahájení procesu otáčení.

Rotace na vyžádání

Azure CLI

Pomocí příkazu Azure CLI az keyvault key rotate otočte klíč.

az keyvault key rotate --vault-name <vault-name> --name <key-name>

Azure PowerShell

Klíč otočte pomocí rutiny Azure PowerShell Invoke-AzKeyVaultKeyRotation.

Invoke-AzKeyVaultKeyRotation -VaultName <vault-name> -Name <key-name>

Konfigurace oznámení o blížícím se vypršení platnosti klíče

Můžete nakonfigurovat oznámení o vypršení platnosti klíče Event Gridu poblíž události vypršení platnosti. Pokud se automatizovaná obměně nedá použít, například když je klíč importován z místního HSM, můžete nakonfigurovat oznámení o blížícím se vypršení platnosti jako připomenutí pro ruční obměnu nebo jako trigger pro vlastní automatizované obměně prostřednictvím integrace se službou Event Grid. Oznámení můžete nastavit tak, aby se aktivovalo určité dny, měsíce nebo roky před událostí blížícího se vypršení platnosti klíče.

Konfigurace oznámení

Další informace o oznámeních služby Event Grid v Key Vault najdete v tématu Azure Key Vault jako zdroj event Gridu.

Konfigurace rotace klíčů pomocí šablony ARM

Zásady obměně klíčů můžete nakonfigurovat pomocí šablon ARM.

Poznámka:

Pokud chcete klíč nasadit prostřednictvím řídicí roviny, potřebujete roli Key Vault Contributor v Key Vault, který je nakonfigurovaný pomocí Azure RBAC.

{
    "$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."
            }
        },
        "rotationTimeAfterCreate": {
            "defaultValue": "P18M",
            "type": "String",
            "metadata": {
                "description": "Time duration to trigger key rotation, for example, P30D, P1M, P2Y."
            }
        },
        "expiryTime": {
            "defaultValue": "P2Y",
            "type": "String",
            "metadata": {
                "description": "The expiry time for new key version, for example, P90D, P2M, P3Y."
            }
        },
        "notifyTime": {
            "defaultValue": "P30D",
            "type": "String",
            "metadata": {
                "description": "Near expiry Event Grid notification, for example, P30D."
            }
        }

    },
    "resources": [
        {
            "type": "Microsoft.KeyVault/vaults/keys",
            "apiVersion": "2024-11-01",
            "name": "[concat(parameters('vaultName'), '/', parameters('keyName'))]",
            "location": "[resourceGroup().location]",
            "properties": {
                "vaultName": "[parameters('vaultName')]",
                "kty": "RSA",
                "rotationPolicy": {
                    "lifetimeActions": [
                        {
                            "trigger": {
                                "timeAfterCreate": "[parameters('rotationTimeAfterCreate')]",
                                "timeBeforeExpiry": ""
                            },
                            "action": {
                                "type": "Rotate"
                            }
                        },
                        {
                            "trigger": {
                                "timeBeforeExpiry": "[parameters('notifyTime')]"
                            },
                            "action": {
                                "type": "Notify"
                            }
                        }

                    ],
                    "attributes": {
                        "expiryTime": "[parameters('expiryTime')]"
                    }
                }
            }
        }
    ]
}

Konfigurace správy zásad obměny klíčů

Pomocí služby Azure Policy můžete řídit životní cyklus klíče a zajistit, aby se všechny klíče konfigurovaly tak, aby se obměňovaly během zadaného počtu dnů.

Vytvoření a přiřazení definice zásady

  1. Přejděte ke zdroji zásady.
  2. Na levé straně stránky Azure Policy v části Authoring vyberte Assignments.
  3. V horní části stránky vyberte Přiřadit politiku. Toto tlačítko otevře stránku s přiřazením zásad.
  4. Zadejte následující informace:
  5. Vyplňte všechna další pole. Přejděte na karty kliknutím na tlačítka Předchozí a Další v dolní části stránky.
  6. Vyberte možnost Zkontrolovat a vytvořit.
  7. Vyberte Vytvořit.

Po přiřazení předdefinované zásady může trvat až 24 hodin, než se kontrola dokončí. Po dokončení kontroly uvidíte výsledky dodržování předpisů, jako je následující.

Snímek obrazovky dodržování zásady rotace klíčů

Přizpůsobení zásad obměně klíčů pomocí AI

GitHub Copilot vám můžou pomoct vytvářet přizpůsobené zásady obměny klíčů pro konkrétní požadavky na dodržování předpisů nebo integrace služeb Azure.

I need to configure a key rotation policy for my Azure Key Vault key that's used for Azure Storage encryption. Help me create the rotation policy with these requirements:
- Key vault name: my-storage-kv
- Key name: storage-encryption-key
- Rotate the key every 180 days
- Send a notification 30 days before expiry
- Set key expiration to 2 years
Provide both Azure CLI commands and a JSON policy file I can use with the Azure CLI.

GitHub Copilot využívá AI, takže jsou možné překvapení a chyby. Další informace najdete v tématu Copilot nejčastější dotazy.

Prostředky