Poznámka
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Aplikace Azure Konfigurace šifruje citlivé informace v klidovém stavu. Použití klíčů spravovaných zákazníkem poskytuje vylepšenou ochranu dat tím, že umožňuje spravovat šifrovací klíče. Při použití šifrování spravovaného klíče se všechny citlivé informace v konfiguraci aplikace šifrují pomocí klíče Azure Key Vault poskytnutého uživatelem. Díky tomu můžete šifrovací klíč na vyžádání otočit. Poskytuje také možnost odvolat přístup ke citlivým informacím v konfiguraci Aplikace Azure odvoláním přístupu instance app Configuration ke klíči.
Přehled
Azure App Configuration šifruje citlivé informace v klidovém režimu pomocí 256bitového šifrovacího klíče AES poskytovaného Microsoftem. Každá instance služby App Configuration má svůj vlastní šifrovací klíč spravovaný službou a používá se k šifrování citlivých informací. Citlivé informace zahrnují hodnoty nalezené v párech klíč-hodnota. Pokud je funkce klíče spravovaná zákazníkem povolená, služba App Configuration použije spravovanou identitu přiřazenou k instanci App Configuration k ověření pomocí Microsoft Entra ID. Spravovaná identita pak zavolá službu Azure Key Vault a zabalí šifrovací klíč instance služby App Configuration. Zabalený šifrovací klíč se pak uloží a nezapsaný šifrovací klíč se uloží do mezipaměti v rámci konfigurace aplikace po dobu jedné hodiny. Konfigurace aplikace každou hodinu aktualizuje nerozbalenou verzi šifrovacího klíče instance App Configuration. Tento proces zajišťuje dostupnost za normálních provozních podmínek.
Důležité
Pokud už identita přiřazená k instanci App Configuration nemá oprávnění k rozbalení šifrovacího klíče instance nebo pokud je spravovaný klíč trvale odstraněný nebo pokud platnost používané verze spravovaného klíče vyprší, nebude už možné dešifrovat citlivé informace uložené v instanci App Configuration. Pomocí funkce softwarového odstranění ve službě Azure Key Vault zmírníte riziko náhodného odstranění šifrovacího klíče. Vynecháním verze klíče při konfiguraci šifrování spravovaného klíče a nastavením automatické obměny klíčů v trezoru klíčů zmírníte možnost vypršení platnosti základního spravovaného klíče.
Požadavky
K úspěšnému povolení klíčového klíče spravovaného zákazníkem pro konfiguraci Aplikace Azure jsou potřeba následující komponenty:
- Instance konfigurace úrovně Standard nebo Premium Aplikace Azure.
- Služba Azure Key Vault s povolenými funkcemi obnovitelného odstranění a ochrany před vymazáním.
- Klíč RSA nebo RSA-HSM v rámci služby Key Vault.
- Platnost klíče nesmí vypršena, musí být povolená a musí mít povolené možnosti zabalení i rozbalení.
Po nakonfigurování těchto prostředků použijte následující kroky, aby Azure App Configuration mohla použít klíč Key Vault:
- Přiřaďte spravovanou identitu k instanci konfigurace Aplikace Azure.
- Udělte identitě oprávnění pro přístup k klíči služby Key Vault.
- V případě služby Key Vault s povoleným Azure RBAC přiřaďte roli
Key Vault Crypto Service Encryption User
pro cílovou službu Key Vault. - Pro službu Key Vault, která používá autorizaci zásad přístupu, udělte identitě
GET
,WRAP
aUNWRAP
oprávnění v zásadách přístupu cílové služby Key Vault.
- V případě služby Key Vault s povoleným Azure RBAC přiřaďte roli
Povolení šifrování klíčů spravovaných zákazníkem
Vytvořte úložiště konfigurace aplikací na úrovni Standard nebo Premium, pokud ho nemáte.
Pomocí Azure CLI vytvořte službu Azure Key Vault s povolenou ochranou před vymazáním. Měkké odstranění je ve výchozím nastavení zapnuto. Oba
vault-name
aresource-group-name
jsou poskytovány uživatelem a musí být jedinečné. Používámecontoso-vault
acontoso-resource-group
v těchto příkladech.az keyvault create --name contoso-vault --resource-group contoso-resource-group --enable-purge-protection
Vytvořte klíč služby Key Vault. Zadejte jedinečný
key-name
název tohoto klíče a nahraďte název služby Key Vault (contoso-vault
) vytvořený v kroku 2. Určete, jestli dáváte přednostRSA
neboRSA-HSM
šifrování (RSA-HSM
je k dispozici pouze na úrovni Premium).az keyvault key create --name key-name --kty {RSA or RSA-HSM} --vault-name contoso-vault
Výstup z tohoto příkazu zobrazuje ID klíče (
kid
) pro vygenerovaný klíč. Poznamenejte si ID klíče, které použijete později v tomto cvičení. ID klíče má formát:https://{my key vault}.vault.azure.net/keys/{key-name}/{key-version}
. ID klíče má tři důležité komponenty:- Identifikátor URI služby Key Vault:
https://{my key vault}.vault.azure.net
- Název klíče služby Key Vault:
{key-name}
- Verze klíče služby Key Vault:
{key-version}
- Identifikátor URI služby Key Vault:
Pomocí Azure CLI vytvořte spravovanou identitu přiřazenou systémem a nahraďte název instance služby App Configuration a skupinu prostředků použitou v předchozích krocích. Spravovaná identita se použije pro přístup ke spravovanému klíči. Používáme
contoso-app-config
k ilustraci názvu instance služby App Configuration:az appconfig identity assign --name contoso-app-config --resource-group contoso-resource-group --identities [system]
Výstup tohoto příkazu zahrnuje ID hlavního objektu (
"principalId"
) a ID tenanta ("tenantId"
) identity přiřazené systémem. Tyto ID identifikátory se použijí k zajištění přístupu identit ke spravovanému klíči.{ "principalId": {Principal Id}, "tenantId": {Tenant Id}, "type": "SystemAssigned", "userAssignedIdentities": null }
Poznámka:
Pokud chcete vytvořit spravovanou identitu přiřazenou uživatelem, postupujte podle tohoto kurzu.
Spravovaná identita instance konfigurace Aplikace Azure potřebuje přístup ke klíči, aby bylo možné provádět ověřování klíčů, šifrování a dešifrování. Konkrétní sada akcí, ke kterým potřebuje přístup, zahrnuje:
GET
,WRAP
aUNWRAP
pro klíče. Tato oprávnění je možné udělit přiřazenímKey Vault Crypto Service Encryption User
role pro trezory klíčů s podporou Azure RBAC. Pro trezory klíčů používající autorizaci zásad přístupu nastavte zásadu pro výše uvedená oprávnění ke klíči. Udělení přístupu vyžaduje ID hlavního objektu spravované identity instance App Configuration. Nahraďte níže uvedenou hodnotu jakocontoso-principalId
ID objektu zabezpečení získané v předchozím kroku. Udělení oprávnění spravovanému klíči pomocí příkazového řádku:Pro trezory klíčů s povoleným Azure RBAC použijte následující příkaz.
az role assignment create --assignee contoso-principalId --role "Key Vault Crypto Service Encryption User" --scope key-vault-resource-id
Teď, když má instance konfigurace Aplikace Azure přístup ke spravovanému klíči, můžeme povolit funkci klíče spravovaného zákazníkem ve službě pomocí Azure CLI. Připomeňte si následující vlastnosti zaznamenané během kroků vytvoření klíče:
key name
key vault URI
.az appconfig update -g contoso-resource-group -n contoso-app-config --encryption-key-name key-name --encryption-key-vault key-vault-Uri
Příkaz ve výchozím nastavení používá spravovanou identitu přiřazenou systémem k ověření ve službě Key Vault.
Poznámka:
Pokud pro přístup ke klíči spravovanému zákazníkem používáte spravovanou identitu přiřazenou uživatelem, můžete jeho ID klienta explicitně zadat přidáním
--identity-client-id <client ID of your user assigned identity>
do příkazu.
Vaše instance konfigurace Aplikace Azure je teď nakonfigurovaná tak, aby používala klíč spravovaný zákazníkem uložený ve službě Azure Key Vault.
Zákaz šifrování klíčů spravovaných zákazníkem
Ujistěte se, že aktuální klíč spravovaný zákazníkem je platný a funkční. Konfigurace aplikace musí před návratem k klíčům spravovaným Microsoftem dešifrovat stávající data pomocí aktuálního klíče. Pokud vypršela platnost aktuálního klíče nebo byl jeho přístup odvolán, musíte nejprve obnovit přístup k ho.
Pomocí Azure CLI aktualizujte instanci služby App Configuration a odeberte konfiguraci klíče spravovaného zákazníkem. Nahraďte
contoso-resource-group
acontoso-app-config
nahraďte odpovídajícími hodnotami pro nastavení.az appconfig update -g contoso-resource-group -n contoso-app-config --encryption-key-name ""
Tento příkaz odebere konfiguraci klíče spravovaného zákazníkem z instance služby App Configuration.
Zkontrolujte vlastnosti instance služby App Configuration a ověřte, že byla odebrána konfigurace klíče spravovaného zákazníkem.
az appconfig show -g contoso-resource-group -n contoso-app-config --query "encryption"
Výstup by měl ukázat, že
encryption.keyVaultProperties
vlastnost je nastavena nanull
.
Vaše instance Azure App Configuration je teď nakonfigurovaná tak, aby k šifrování používala spravované klíče Microsoftu.
Poznámka:
Zakázání šifrování klíčů spravovaného zákazníkem vrátí instanci služby App Configuration k používání klíčů spravovaných Microsoftem. Zajistěte, aby tato změna odpovídala požadavkům vaší organizace na zabezpečení a dodržování předpisů.
Odvolání přístupu
Když uživatelé ve své instanci konfigurace Aplikace Azure povolí funkci klíče spravovaného zákazníkem, řídí schopnost služby přistupovat ke svým citlivým informacím. Spravovaný klíč slouží jako kořenový šifrovací klíč. Uživatelé můžou odvolat přístup instance služby App Configuration ke svému spravovanému klíči změnou zásad přístupu k trezoru klíčů. Když je tento přístup odvolán, konfigurace aplikace ztratí možnost dešifrovat uživatelská data do jedné hodiny. V tomto okamžiku instance konfigurace aplikace zakáže všechny pokusy o přístup. Tato situace je obnovitelná tím, že službě udělíte přístup ke spravovanému klíči ještě jednou. Během jedné hodiny bude app Configuration moct dešifrovat uživatelská data a fungovat za normálních podmínek.
Poznámka:
Všechna data služby Azure App Configuration se ukládají na dobu až 24 hodin v oddělené záloze. To zahrnuje nezabalený šifrovací klíč. Tato data nejsou okamžitě dostupná pro službu nebo tým služby. V případě nouzového obnovení se Azure App Configuration znovu odpojí od spravovaných dat klíčů.
Rotace klíčů
Pokud je klíč spravovaný zákazníkem nakonfigurovaný v instanci služby App Configuration, je nutné pravidelně obměňovat spravovaný klíč, aby se zajistilo, že nikdy nevyprší platnost. Je důležité si uvědomit, že pro úspěšnou rotaci klíčů musí být aktuální klíč platný a funkční. Pokud už vypršela platnost aktuálního klíče nebo došlo k odvolání přístupu ke konfiguraci aplikace, instance app Configuration nebude moct dešifrovat data, což znemožní obměna. Automatická rotace klíčů v trezoru lze nakonfigurovat tak, aby nebylo nutné ručně měnit šifrovací klíče, a tím zajistit, aby nejnovější verze klíče zůstala platná. Při spoléhání na automatickou obměnu klíčů trezoru byste měli zajistit, aby konfigurace spravovaného klíče instance App Configuration neodkazovala na konkrétní verzi klíče. Vynechání verze umožňuje službě App Configuration při provádění automatické rotace vždy přejít na nejnovější verzi klíče v klíčovém trezoru. Selhání rotace spravovaného klíče může být považováno za bezpečnostní problém, a kromě toho absence rotace může vést ke ztrátě přístupu k instanci App Configuration. Důvodem je skutečnost, že pokud platnost používané verze spravovaného klíče vyprší, služba App Configuration nebude moct dešifrovat data.
Pro rekapitulace se doporučuje následující osvědčené postupy:
- Povolte automatické otáčení klíče v Key Vault pro spravovaný klíč.
- Při nastavování šifrování klíče spravovaného zákazníkem vynecháte použití konkrétní verze klíče trezoru klíčů.
Klíče s verzemi vs. klíče bez verzí
Nastavení šifrování klíčů spravovaného zákazníkem vyžaduje předání identifikátoru klíče v trezoru klíčů. Identifikátor klíče trezoru klíčů může nebo nemusí obsahovat verzi. Doporučujeme vynechat verzi klíče při konfiguraci šifrování klíče spravovaného zákazníkem k umožnění automatické rotace. Použití klíče s verzí by se mělo pečlivě zvážit, protože pokud se klíčová verze ručně neobmění a její platnost vyprší, dojde ke ztrátě přístupu k instanci App Configuration.
- Příklad identifikátoru klíče bez verzí:
https://{my key vault}.vault.azure.net/keys/{key-name}
- Příklad identifikátoru klíče s verzí (nedoporučuje se):
https://{my key vault}.vault.azure.net/keys/{key-name}/{key-version}
Další kroky
V tomto článku jste nakonfigurovali instanci konfigurace Aplikace Azure tak, aby k šifrování používala klíč spravovaný zákazníkem. Další informace o integraci služby App Service se spravovanými identitami Azure najdete v dalším kroku.