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.
Komunikace mezi klientskou aplikací a účtem azure Storage se šifruje pomocí protokolu TLS (Transport Layer Security). TLS je standardní kryptografický protokol, který zajišťuje ochranu soukromí a integritu dat mezi klienty a službami přes internet. Další informace o protokolu TLS naleznete v tématu Transport Layer Security.
Azure Storage podporuje čtyři verze protokolu TLS: 1.0, 1.1, 1.2 a 1.3. Azure Storage používá protokol TLS 1.2 nebo TLS 1.3 na veřejných koncových bodech HTTPS, ale kvůli zpětné kompatibilitě stále podporuje protokol TLS 1.0 a TLS 1.1. I když se teď protokol TLS 1.3 podporuje, možnost jeho vynucení jako minimální verze TLS pro účty Azure Storage aktuálně není podporována. Doporučená minimální verze protokolu TLS je TLS 1.2. Klienti používající nejnovější verze protokolu TLS automaticky vyjednávají, aby používali protokol TLS 1.3, pokud je k dispozici.
Návod
Azure Storage spoléhá na implementaci PROTOKOLU SSL pro Windows, která není založená na OpenSSL, a proto není vystavená ohrožením zabezpečení souvisejících s OpenSSL.
Účty Azure Storage umožňují klientům odesílat a přijímat data s nejstarší verzí protokolu TLS, TLS 1.0 a vyšší. Pokud chcete vynutit přísnější bezpečnostní opatření, můžete nakonfigurovat účet úložiště tak, aby vyžadoval odesílání a přijímání dat klienty s novější verzí protokolu TLS. Pokud účet úložiště vyžaduje minimální verzi protokolu TLS, všechny požadavky provedené ve starší verzi selžou.
Tento článek popisuje, jak pomocí architektury DRAG (Detection-Remediation-Audit-Governance) nepřetržitě spravovat zabezpečený protokol TLS pro účty úložiště.
Informace o tom, jak určit konkrétní verzi protokolu TLS při odesílání požadavku z klientské aplikace, naleznete v tématu Konfigurace protokolu TLS (Transport Layer Security) pro klientskou aplikaci.
Poznámka:
Šifrovací sada používaná při odesílání dat do účtu úložiště a přijímání dat z účtu úložiště závisí na používané verzi protokolu TLS. Účet úložiště není možné nakonfigurovat tak, aby blokoval použití konkrétních šifer, kromě vyžadování minimální verze protokolu TLS. Pokud při připojování k účtu úložiště vyžadujete možnost povolit pouze konkrétní šifrovací sady, zvažte použití brány Azure Application Gateway. Další informace o používání služby Application Gateway pro tento účel najdete v tématu Konfigurace verzí zásad TLS a šifrovacích sad na Azure Application Gateway.
Zjištění verze protokolu TLS používané klientskými aplikacemi
Když pro účet úložiště vynutíte minimální verzi protokolu TLS, riskujete odmítnutí požadavků od klientů, kteří odesílají data se starší verzí protokolu TLS. Pokud chcete zjistit, jak může konfigurace minimální verze protokolu TLS ovlivnit klientské aplikace, společnost Microsoft doporučuje povolit protokolování pro váš účet Služby Azure Storage a analyzovat protokoly po intervalu, abyste zjistili, které verze klientských aplikací TLS používají.
Pokud chcete protokolovat požadavky na váš účet Azure Storage a určit verzi protokolu TLS používanou klientem, můžete použít protokolování služby Azure Storage ve službě Azure Monitor. Další informace najdete v tématu Monitorování služby Azure Storage.
Protokolování služby Azure Storage v Azure Monitor podporuje analyzovat data protokolů pomocí dotazů protokolu. K dotazování protokolů můžete použít pracovní prostor služby Azure Log Analytics. Další informace o dotazech protokolu najdete v kurzu: Začínáme s dotazy Log Analytics.
Pokud chcete data Azure Storage protokolovat pomocí služby Azure Monitor a analyzovat je pomocí služby Azure Log Analytics, musíte nejprve vytvořit nastavení diagnostiky, které určuje, pro jaké typy požadavků a pro které služby úložiště chcete data protokolovat. Pokud chcete vytvořit nastavení diagnostiky na webu Azure Portal, postupujte takto:
V rámci předplatného, které obsahuje váš účet Azure Storage, vytvořte nový pracovní prostor služby Log Analytics. Po nakonfigurování protokolování pro účet úložiště budou protokoly dostupné v pracovním prostoru služby Log Analytics. Další informace najdete v tématu Vytvoření pracovního prostoru služby Log Analytics na webu Azure Portal.
Na webu Azure Portal přejděte na svůj účet úložiště.
V části Monitorování vyberte Nastavení diagnostiky.
Vyberte službu Azure Storage, pro kterou chcete protokolovat požadavky. Můžete například zvolit objekt blob pro protokolování požadavků do úložiště objektů blob.
Vyberte Přidat nastavení diagnostiky.
Zadejte název nastavení diagnostiky.
V části Podrobnosti o kategorii v oddílu protokolu vyberte, které typy požadavků se mají protokolovat. Žádosti o čtení, zápis a odstranění můžete protokolovat. Pokud například zvolíte StorageRead a StorageWrite , protokoluje požadavky na čtení a zápis do vybrané služby.
V části Podrobnosti o cíli vyberte možnost Odeslat do služby Log Analytics. Vyberte své předplatné a pracovní prostor služby Log Analytics, který jste vytvořili dříve, jak je znázorněno na následujícím obrázku.
Jakmile vytvoříte nastavení diagnostiky, požadavky na účet úložiště se následně zaprotokolují podle daného nastavení. Další informace najdete v tématu Vytvoření nastavení diagnostiky pro shromažďování protokolů prostředků a metrik v Azure.
Referenční informace o polích dostupných v protokolech Azure Storage v Azure Monitoru najdete v Protokolech prostředků.
Dotazování protokolovaných žádostí podle verze TLS
Protokoly Azure Storage ve službě Azure Monitor zahrnují verzi TLS použitou k odeslání požadavku na účet úložiště. Pomocí vlastnosti TlsVersion zkontrolujte verzi protokolu TLS protokolovaného požadavku.
Pokud chcete zjistit, kolik požadavků bylo provedeno v úložišti objektů blob s různými verzemi protokolu TLS za posledních 7 dnů, otevřete pracovní prostor služby Log Analytics. Dále vložte následující dotaz do nového dotazu protokolu a spusťte ho. Nezapomeňte nahradit zástupné hodnoty v závorkách vlastními hodnotami:
StorageBlobLogs
| where TimeGenerated > ago(7d) and AccountName == "<account-name>"
| summarize count() by TlsVersion
Výsledky ukazují počet požadavků provedených s každou verzí protokolu TLS:
Dotazování zaprotokolovaných požadavků podle IP adresy volajícího a hlavičky uživatelského agenta
Protokoly azure Storage ve službě Azure Monitor zahrnují také IP adresu volajícího a hlavičku uživatelského agenta, která vám pomůže vyhodnotit, které klientské aplikace přistupovaly k účtu úložiště. Tyto hodnoty můžete analyzovat a rozhodnout se, jestli se klientské aplikace musí aktualizovat, aby používaly novější verzi protokolu TLS, nebo zda je přijatelné odmítnout žádost klienta, pokud není odeslána s minimální verzí protokolu TLS.
Pokud chcete zjistit, kteří klienti za posledních 7 dnů provedli požadavky s verzí protokolu TLS starší než TLS 1.2, vložte následující dotaz do nového dotazu protokolu a spusťte ho. Nezapomeňte nahradit zástupné hodnoty v závorkách vlastními hodnotami:
StorageBlobLogs
| where TimeGenerated > ago(7d) and AccountName == "<account-name>" and TlsVersion != "TLS 1.2"
| project TlsVersion, CallerIpAddress, UserAgentHeader
Náprava rizik zabezpečení s minimální verzí protokolu TLS
Pokud máte jistotu, že provoz z klientů používajících starší verze protokolu TLS je minimální, nebo že je přijatelné, pokud požadavky provedené se starší verzí protokolu TLS selžou, můžete v účtu úložiště začít vynucovat minimální verzi protokolu TLS. Vyžadování, aby klienti k provádění požadavků na účet úložiště používali minimální verzi protokolu TLS, je součástí strategie minimalizace rizik zabezpečení vašich dat.
Důležité
Pokud používáte službu, která se připojuje ke službě Azure Storage, před nastavením požadované minimální verze účtu úložiště se ujistěte, že tato služba používá odpovídající verzi protokolu TLS k odesílání požadavků do Služby Azure Storage.
Konfigurace minimální verze protokolu TLS pro účet úložiště
Pokud chcete nakonfigurovat minimální verzi protokolu TLS pro účet úložiště, nastavte pro účet verzi MinimumTlsVersion . Tato vlastnost je k dispozici pro všechny účty úložiště vytvořené pomocí modelu nasazení Azure Resource Manager. Další informace o modelu nasazení Azure Resource Manager najdete v přehledu účtu úložiště.
Výchozí hodnota Vlastnosti MinimumTlsVersion se liší v závislosti na tom, jak jste ji nastavili. Když vytvoříte účet úložiště pomocí webu Azure Portal, minimální verze protokolu TLS je ve výchozím nastavení nastavená na 1.2. Při vytváření účtu úložiště pomocí PowerShellu, Azure CLI nebo šablony Azure Resource Manageru MinimumTlsVersion se tato vlastnost ve výchozím nastavení nenastaví a nevrátí hodnotu, dokud ji explicitně nenakonfigurujete."
Pokud MinimumTlsVersion vlastnost není nastavena, její hodnota může být zobrazena jako null nebo prázdný řetězec v závislosti na kontextu. Účet úložiště povolí požadavky odeslané pomocí protokolu TLS verze 1.0 nebo vyšší, pokud vlastnost není nastavená.
Když vytvoříte účet úložiště pomocí webu Azure Portal, minimální verze protokolu TLS je ve výchozím nastavení nastavená na 1.2.
Pokud chcete nakonfigurovat minimální verzi protokolu TLS pro existující účet úložiště pomocí webu Azure Portal, postupujte takto:
Poznámka:
Po aktualizaci minimální verze protokolu TLS pro účet úložiště může trvat až 30 sekund, než se změna plně rozšíří.
Konfigurace minimální verze protokolu TLS vyžaduje verzi 2019-04-01 nebo novější poskytovatele prostředků Azure Storage. Další informace najdete v tématu REST API poskytovatele prostředků Azure Storage.
Kontrola minimální požadované verze protokolu TLS pro více účtů
Pokud chcete zkontrolovat minimální požadovanou verzi protokolu TLS v sadě účtů úložiště s optimálním výkonem, můžete použít Azure Resource Graph Explorer na webu Azure Portal. Další informace o používání Azure Resource Graph Exploreru najdete v názorném průvodci : Spuštění prvního dotazu pomocí Azure Resource Graph Exploreru.
Spuštěním následujícího dotazu v Průzkumníku Resource Graphu se vrátí seznam účtů úložiště a zobrazí se minimální verze protokolu TLS pro každý účet:
resources
| where type =~ 'Microsoft.Storage/storageAccounts'
| extend minimumTlsVersion = parse_json(properties).minimumTlsVersion
| project subscriptionId, resourceGroup, name, minimumTlsVersion
Testování minimální verze protokolu TLS z klienta
Pokud chcete otestovat, že minimální požadovaná verze PROTOKOLU TLS pro účet úložiště zakazuje volání provedená ve starší verzi, můžete klienta nakonfigurovat tak, aby používal starší verzi protokolu TLS. Další informace o konfiguraci klienta pro použití konkrétní verze protokolu TLS naleznete v tématu Konfigurace protokolu TLS (Transport Layer Security) pro klientskou aplikaci.
Když klient přistupuje k účtu úložiště pomocí verze protokolu TLS, která nesplňuje minimální nakonfigurovanou verzi protokolu TLS pro tento účet, vrátí Azure Storage kód chyby 400 (Chybný požadavek) a zprávu oznamující, že použitá verze protokolu TLS není povolená pro provádění požadavků na tento účet úložiště.
Poznámka:
Při konfiguraci minimální verze protokolu TLS pro účet úložiště se tato minimální verze vynucuje na aplikační vrstvě. Nástroje, které se pokusí určit podporu TLS ve vrstvě protokolu, mohou při přímém spuštění na koncovém bodu úložiště vracet TLS verze spolu s minimální požadovanou verzí.
Použití Azure Policy k auditování dodržování předpisů
Pokud máte velký počet účtů úložiště, můžete chtít provést audit, abyste měli jistotu, že jsou všechny účty nakonfigurované pro minimální verzi protokolu TLS, kterou vaše organizace vyžaduje. Pokud chcete auditovat sadu účtů úložiště pro dodržování předpisů, použijte Azure Policy. Azure Policy je služba, kterou můžete použít k vytváření, přiřazování a správě zásad, které se vztahují na prostředky Azure. Azure Policy pomáhá udržovat tyto prostředky v souladu s vašimi firemními standardy a smlouvami o úrovni služeb. Další informace najdete v tématu Přehled služby Azure Policy.
Vytvořte zásadu s auditním účinkem
Azure Policy podporuje efekty, které určují, jaký bude výsledek, když se pravidlo zásad vyhodnotí vůči prostředku. Efekt auditování vytvoří upozornění, pokud prostředek není v souladu s předpisy, ale nezastaví požadavek. Další informace o efektech najdete v tématu Vysvětlení efektů Azure Policy.
Pokud chcete vytvořit zásadu s účinkem auditování pro minimální verzi protokolu TLS na webu Azure Portal, postupujte takto:
Na webu Azure Portal přejděte do služby Azure Policy.
V části Vytváření obsahu vyberte Definice.
Výběrem možnosti Přidat definici zásady vytvořte novou definici zásady.
Pro pole Umístění definice vyberte tlačítko Více a určete, kde se nachází prostředek zásad auditu.
Zadejte název pro tuto zásadu. Volitelně můžete upřesnit popis a kategorii.
V části Pravidlo zásad přidejte do oddílu policyRule následující definici zásady.
{ "policyRule": { "if": { "allOf": [ { "field": "type", "equals": "Microsoft.Storage/storageAccounts" }, { "anyOf": [ { "field": "Microsoft.Storage/storageAccounts/minimumTlsVersion", "notEquals": "TLS1_2" }, { "field": "Microsoft.Storage/storageAccounts/minimumTlsVersion", "exists": "false" } ] } ] }, "then": { "effect": "audit" } } }Zásady uložte.
Přiřaďte zásadu
Dále přiřaďte zásady k prostředku. Rozsah zásady se vztahuje na daný prostředek a všechny prostředky pod ním. Další informace o přiřazení zásad najdete v tématu Struktura přiřazení Azure Policy.
Pokud chcete zásady přiřadit pomocí webu Azure Portal, postupujte takto:
- Na webu Azure Portal přejděte do služby Azure Policy.
- V části Vytváření obsahu vyberte Zadání.
- Výběrem možnosti Přiřadit zásadu vytvořte nové přiřazení zásad.
- U pole Obor vyberte obor přiřazení zásady.
- V poli Definice zásady vyberte tlačítko Další a pak ze seznamu vyberte zásadu, kterou jste definovali v předchozí části.
- Zadejte název pro přiřazení zásad. Popis je volitelný.
- Ponechte vynucování zásad nastavené na Povoleno. Toto nastavení nemá žádný vliv na zásady auditu.
- Výběrem možnosti Zkontrolovat a vytvořit vytvoříte úkol.
Zobrazit sestavu dodržování předpisů
Po přiřazení zásady můžete zobrazit sestavu dodržování předpisů. Zpráva o dodržování předpisů pro politiku auditu poskytuje informace o tom, které účty úložiště nejsou v souladu s politikou. Další informace najdete v tématu Získání dat o dodržování zásad.
Po vytvoření přiřazení zásady může trvat několik minut, než se sestava dodržování předpisů zpřístupní.
Pokud chcete zobrazit sestavu dodržování předpisů na webu Azure Portal, postupujte takto:
Na webu Azure Portal přejděte do služby Azure Policy.
Vyberte Dodržování předpisů.
Vyfiltrujte výsledky pro název přiřazení politiky, které jste vytvořili v předchozím kroku. Zpráva ukazuje, kolik prostředků není v souladu se zásadou.
Můžete přejít k podrobnostem sestavy a získat další podrobnosti, včetně seznamu účtů úložiště, které nedodržují předpisy.
Použití služby Azure Policy k vynucení minimální verze protokolu TLS
Azure Policy podporuje zásady správného řízení v cloudu tím, že zajistí, aby prostředky Azure dodržovaly požadavky a standardy. Pokud chcete vynutit minimální požadavek na verzi protokolu TLS pro účty úložiště ve vaší organizaci, můžete vytvořit zásadu, která brání vytvoření nového účtu úložiště, který nastaví minimální požadavek protokolu TLS na starší verzi protokolu TLS, než která je diktována zásadami. Tato zásada také zabrání všem změnám konfigurace existujícího účtu, pokud minimální nastavení verze protokolu TLS pro tento účet nevyhovuje zásadám.
Zásady vynucení používají účinek Odepřít, aby zabránily požadavku, který by vytvořil nebo upravil účet úložiště tak, aby minimální verze protokolu TLS přestala dodržovat standardy vaší organizace. Další informace o efektech najdete v tématu Vysvětlení efektů Azure Policy.
Pokud chcete vytvořit zásadu s účinkem Odepřít pro minimální verzi protokolu TLS, která je menší než TLS 1.2, postupujte podle stejných kroků popsaných v tématu Použití služby Azure Policy k auditování dodržování předpisů, ale v části PolicyRule definice zásady zadejte následující JSON:
{
"policyRule": {
"if": {
"allOf": [
{
"field": "type",
"equals": "Microsoft.Storage/storageAccounts"
},
{
"anyOf": [
{
"field": "Microsoft.Storage/storageAccounts/minimumTlsVersion",
"notEquals": "TLS1_2"
},
{
"field": "Microsoft.Storage/storageAccounts/minimumTlsVersion",
"exists": "false"
}
]
}
]
},
"then": {
"effect": "deny"
}
}
}
Po vytvoření zásady s efektem Odepřít a přiřazením k oboru nemůže uživatel vytvořit účet úložiště s minimální verzí protokolu TLS starší než 1.2. Uživatel nemůže provádět žádné změny konfigurace existujícího účtu úložiště, který aktuálně vyžaduje minimální verzi protokolu TLS starší než 1.2. Při pokusu o to dojde k chybě. Aby bylo možné pokračovat v vytváření nebo konfiguraci účtu, musí být požadovaná minimální verze protokolu TLS pro účet úložiště nastavená na 1.2.
Následující obrázek ukazuje chybu, ke které dojde, když se pokusíte vytvořit účet úložiště s minimální verzí protokolu TLS nastavenou na TLS 1.0 (výchozí hodnota pro nový účet), když zásada s účinkem Odepřít vyžaduje, aby minimální verze protokolu TLS byla nastavena na TLS 1.2.
Oprávnění potřebná k vyžadování minimální verze protokolu TLS
Pokud chcete nastavit vlastnost MinimumTlsVersion pro účet úložiště, musí mít uživatel oprávnění k vytváření a správě účtů úložiště. Role řízení přístupu na základě role Azure (Azure RBAC), které poskytují tato oprávnění, zahrnují akci Microsoft.Storage/storageAccounts/write nebo Microsoft.Storage/storageAccounts/* . Mezi předdefinované role s touto akcí patří:
- Role vlastníka v Azure Resource Manager
- Role přispěvatele služby Azure Resource Manager
- Role Přispěvatele Účtu Úložiště
Tyto role neposkytují přístup k datům v účtu úložiště prostřednictvím ID Microsoft Entra. Avšak zahrnují Microsoft.Storage/storageAccounts/listkeys/action, která uděluje přístup k přístupovým klíčům účtu. S tímto oprávněním může uživatel používat přístupové klíče účtu pro přístup ke všem datům v účtu úložiště.
Přiřazení rolí musí být vymezena na úroveň účtu úložiště nebo vyšší, aby uživatel pro účet úložiště vyžadoval minimální verzi protokolu TLS. Další informace o rozsahu role najdete v tématu Pochopení rozsahu pro Azure RBAC.
Dávejte pozor, abyste přiřazování těchto rolí omezili jenom na ty, kteří vyžadují možnost vytvořit účet úložiště nebo aktualizovat jeho vlastnosti. Pomocí principu nejnižšího oprávnění se ujistěte, že uživatelé mají nejmenší oprávnění, která potřebují k plnění svých úkolů. Další informace o správě přístupu pomocí Azure RBAC najdete v tématu Osvědčené postupy pro Azure RBAC.
Poznámka:
Klasické role správce předplatného Service Administrator a Spolusprávce zahrnují ekvivalent role vlastníka Azure Resource Manageru. Role Vlastník zahrnuje všechny akce, takže uživatel s jednou z těchto rolí pro správu může také vytvářet a spravovat účty úložiště. Další informace najdete v tématu Role Azure, role Microsoft Entra a klasické role správce předplatného.
Důležité informace z hlediska využívání sítě
Když klient odešle požadavek do účtu úložiště, klient nejprve vytvoří připojení k veřejnému koncovému bodu účtu úložiště před zpracováním jakýchkoli požadavků. Po navázání připojení se zkontroluje minimální nastavení verze protokolu TLS. Pokud požadavek používá starší verzi protokolu TLS, než která je určená nastavením, připojení bude i nadále úspěšné, ale požadavek nakonec selže. Další informace o veřejných koncových bodech pro Azure Storage najdete v části Syntaxe URI prostředku.