Sdílet prostřednictvím


Přidání a správa certifikátů TLS/SSL ve službě Azure App Service

Můžete přidat certifikáty digitálního zabezpečení, které se mají použít v kódu vaší aplikace , nebo pomoct zabezpečit vlastní názvy DNS (Domain Name System) ve službě Azure App Service. App Service poskytuje vysoce škálovatelnou a samoobslužnou službu hostování webů. Certifikáty se aktuálně nazývají certifikáty TLS (Transport Layer Security). Dříve se označovaly jako certifikáty SSL (Secure Sockets Layer). Tyto privátní nebo veřejné certifikáty vám pomůžou zabezpečit připojení k internetu. Certifikáty šifrují data odesílaná mezi prohlížečem, weby, které navštívíte, a serverem webu.

Následující tabulka uvádí možnosti přidání certifikátů ve službě App Service.

Možnost Popis
Vytvoření bezplatného spravovaného certifikátu služby App Service Privátní certifikát, který je bezplatný a snadno použitelný, pokud potřebujete zlepšit zabezpečení vlastní domény ve službě App Service.
Import certifikátu služby App Service Azure spravuje privátní certifikát. Kombinuje jednoduchost automatizované správy certifikátů a flexibilitu možností obnovení a exportu.
Import certifikátu ze služby Azure Key Vault Užitečné, pokud ke správě certifikátů PKCS12 používáte Key Vault. Viz požadavky na privátní certifikát.
Nahrání privátního certifikátu Pokud už máte soukromý certifikát od jiného poskytovatele než Microsoftu, můžete ho nahrát. Viz požadavky na privátní certifikát.
Nahrání veřejného certifikátu Veřejné certifikáty se nepoužívají k zabezpečení vlastních domén, ale pokud je potřebujete pro přístup ke vzdáleným prostředkům, můžete je načíst do kódu.

Požadavky

Požadavky na privátní certifikát

Bezplatný spravovaný certifikát služby App Service a certifikát služby App Service již splňují požadavky služby App Service. Pokud se rozhodnete nahrát nebo importovat privátní certifikát do služby App Service, musí váš certifikát splňovat následující požadavky:

  • Exportujte jako soubor PFX chráněný heslem.
  • Obsahují všechny zprostředkující certifikáty a kořenový certifikát v řetězu certifikátů.

Pokud chcete pomoct zabezpečit vlastní doménu ve vazbě TLS, musí certifikát splňovat tyto dodatečné požadavky:

Poznámka:

Certifikáty ECC (Elliptic Curve Cryptography) fungují se službou App Service při nahrání jako PFX, ale v současné době není možné importovat ze služby Key Vault. Tento článek se na ně nevztahuje. Přesný postup vytvoření certifikátů ECC vám poskytne certifikační autorita.

Po přidání privátního certifikátu do aplikace se certifikát uloží v jednotce nasazení, která je svázaná se skupinou prostředků, oblastí a operačním systémem plánu služby App Service. Interně se nazývá webspace. Tímto způsobem je certifikát přístupný pro jiné aplikace ve stejné skupině prostředků, oblasti a kombinaci operačního systému. Privátní certifikáty nahrané nebo importované do služby App Service se sdílí se službami App Service ve stejné instanční jednotce.

V každém webovém prostoru můžete přidat až 1 000 privátních certifikátů.

Vytvoření bezplatného spravovaného certifikátu

Bezplatný spravovaný certifikát služby App Service je řešení na klíč, které pomáhá zabezpečit vlastní název DNS ve službě App Service. App Service spravuje tento certifikát serveru TLS/SSL bez jakékoli akce od vás.

Před vytvořením bezplatného spravovaného certifikátu se ujistěte, že splňujete požadavky vaší aplikace.

DigiCert vydává bezplatné certifikáty. U některých domén musíte digiCert explicitně povolit jako vystavitele certifikátu vytvořením záznamu domény CAA (Certification Authority Authorization) s hodnotou 0 issue digicert.com.

Azure za vás plně spravuje certifikáty, takže se může kdykoli změnit jakýkoli aspekt spravovaného certifikátu, včetně kořenového vystavitele. Obnovy certifikátů mění jak veřejnou, tak i soukromou část klíče. Všechny tyto změny certifikátu jsou mimo vaši kontrolu. Ujistěte se, že se vyhnete pevným závislostem a připínání certifikátů na spravovaný certifikát nebo jakoukoli část hierarchie certifikátů. Pokud potřebujete chování připnutí certifikátu, přidejte certifikát do vlastní domény pomocí jakékoli jiné dostupné metody v tomto článku.

Bezplatný certifikát má následující omezení:

  • Nepodporuje certifikáty pro domény se zástupnými znaky.
  • Nepodporuje použití jako klientský certifikát pomocí kryptografických otisků certifikátů, které se plánují pro vyřazení a odebrání.
  • Nepodporuje privátní DNS.
  • Není možné exportovat.
  • Ve službě App Service Environment se nepodporuje.
  • Podporuje pouze alfanumerické znaky, pomlčky (-) a tečky (.).
  • Podporuje vlastní domény o délce až 64 znaků.
  • Musí mít záznam A odkazující na IP adresu vaší webové aplikace.
  • Musí být na aplikacích, které jsou veřejně přístupné.
  • U kořenových domén, které jsou integrované s Azure Traffic Managerem, se nepodporuje.
  • Musí splňovat všechna předchozí kritéria pro úspěšná vystavení a obnovení certifikátů.
  1. Na Azure portal v levém podokně vyberte App Services>.

  2. V levém podokně aplikace vyberte Certifikáty. V podokně Spravované certifikáty vyberte Přidat certifikát.

    Snímek obrazovky znázorňující podokno aplikace s vybranými certifikáty, spravovanými certifikáty a možností přidání certifikátu, která je vybrána.

  3. Vyberte vlastní doménu pro bezplatný certifikát a pak vyberte Ověřit. Po dokončení ověření vyberte Přidat. Pro každou podporovanou vlastní doménu můžete vytvořit jenom jeden spravovaný certifikát.

    Po dokončení operace se certifikát zobrazí v seznamu spravovaných certifikátů .

    Snímek obrazovky znázorňující podokno Spravované certifikáty se zobrazeným novým certifikátem

  4. Pokud chcete zajistit zabezpečení vlastní domény s tímto certifikátem, musíte vytvořit vazbu certifikátu. Postupujte podle kroků v části Zabezpečení vlastního názvu DNS pomocí vazby TLS/SSL ve službě Aplikace Azure Service.

Import certifikátu služby App Service

Pokud chcete importovat certifikát služby App Service, nejprve si kupte a nakonfigurujte certifikát služby App Service a postupujte podle zde uvedených kroků.

  1. Na Azure portal v levém podokně vyberte App Services>.

  2. V levém podokně aplikace vyberte Certifikáty>Přineste si vlastní certifikáty (.pfx)>Přidat certifikát.

  3. V části Zdroj vyberte Importovat certifikát služby App Service.

  4. V části Certifikát služby App Service vyberte certifikát, který jste vytvořili.

  5. V části Popisný název certifikátu zadejte název certifikátu ve vaší aplikaci.

  6. Vyberte Ověřit. Po úspěšném ověření vyberte Přidat.

    Snímek obrazovky znázorňující stránku správy aplikací s vybranou možností Certifikáty, Používání vlastních certifikátů (.pfx) a Import certifikátu služby App Service V podokně Přidat certifikát privátního klíče se zobrazuje Ověření.

    Po dokončení operace se certifikát zobrazí v seznamu Přineste si vlastní certifikáty (.pfx).

    Snímek obrazovky znázorňující podokno Přineste si vlastní certifikáty (.pfx) se zobrazeným zakoupeným certifikátem

  7. Pokud chcete s tímto certifikátem zabezpečit vlastní doménu, musíte vytvořit vazbu certifikátu. Postupujte podle kroků v části Zabezpečení vlastního názvu DNS pomocí vazby TLS/SSL ve službě Aplikace Azure Service.

Import certifikátu ze služby Key Vault

Pokud ke správě certifikátů používáte Key Vault, můžete certifikát PKCS12 importovat do služby App Service ze služby Key Vault, pokud splňujete požadavky.

Autorizovat App Service ke čtení z trezoru

Ve výchozím nastavení nemá poskytovatel prostředků služby App Service přístup k vašemu trezoru klíčů. Pokud chcete použít trezor klíčů pro nasazení certifikátu, musíte autorizovat přístup pro čtení pro poskytovatele prostředků (App Service) k trezoru klíčů. Přístup můžete udělit pomocí zásad přístupu nebo řízení přístupu na základě role (RBAC).

Poskytovatel prostředků ID aplikace nebo oprávněný uživatel instančního objektu služby Role RBAC služby Key Vault
Azure App Service nebo Microsoft.Azure.WebSites - abfa0a7c-a6b6-4736-8310-5855508787cd pro Azure Cloud Služby

- 6a02c803-dafd-4136-b4c3-5a6f318b4714 pro Azure Cloud Services pro vládu
Uživatel certifikátu

ID aplikace principal nebo hodnota přiřazení je ID poskytovatele prostředků služby App Service. Pokud je přístup udělen pomocí RBAC, odpovídající ID objektu pro ID aplikace hlavního objektu služby je specifické pro tenanta. Informace o autorizaci oprávnění služby Key Vault pro poskytovatele prostředků služby App Service pomocí zásad přístupu najdete v tématu Poskytnutí přístupu ke klíčům, certifikátům a tajným kódům služby Key Vault pomocí řízení přístupu na základě role v Azure.

az role assignment create --role "Key Vault Certificate User" --assignee "abfa0a7c-a6b6-4736-8310-5855508787cd" --scope "/subscriptions/{subscriptionid}/resourcegroups/{resource-group-name}/providers/Microsoft.KeyVault/vaults/{key-vault-name}"

Import certifikátu z trezoru do aplikace

  1. Na Azure portal v levém podokně vyberte App Services>.

  2. V levém podokně aplikace vyberte Certifikáty>Přineste si vlastní certifikáty (.pfx)>Přidat certifikát.

  3. V části Zdroj vyberte Importovat ze služby Key Vault.

  4. Zvolte Vybrat certifikát trezoru klíčů.

    Snímek obrazovky znázorňující stránku správy aplikací s vybranými certifikáty, používáním vlastních certifikátů (.pfx) a importem ze služby Key Vault

  5. K výběru certifikátu použijte následující tabulku:

    Nastavení Popis
    Předplatné Předplatné spojené s klíčovým trezorem.
    Úložiště klíčů Trezor klíčů s certifikátem, který chcete importovat.
    Certifikát V tomto seznamu vyberte certifikát PKCS12, který je v trezoru. Všechny certifikáty PKCS12 v trezoru jsou uvedené s kryptografickými otisky, ale ve službě App Service se nepodporují všechny.
  6. Až výběr dokončíte, zvolte Vybrat>ověřit a pak vyberte Přidat.

    Po dokončení operace se certifikát zobrazí v seznamu Přineste si vlastní certifikáty (.pfx). Pokud import selže s chybou, certifikát nesplňuje požadavky služby App Service.

    Snímek obrazovky znázorňující podokno Přineste si vlastní certifikáty (.pfx) se zobrazeným importovaným certifikátem

    Pokud certifikát aktualizujete ve službě Key Vault novým certifikátem, služba App Service automaticky synchronizuje certifikát do 24 hodin.

  7. Pokud chcete s tímto certifikátem zabezpečit vlastní doménu, musíte vytvořit vazbu certifikátu. Postupujte podle kroků v části Zabezpečení vlastního názvu DNS pomocí vazby TLS/SSL ve službě Aplikace Azure Service.

Nahrání privátního certifikátu

Jakmile od poskytovatele certifikátů získáte certifikát, připravte ho pro službu App Service podle kroků v této části.

Sloučení zprostředkujících certifikátů

Pokud certifikační autorita poskytuje více certifikátů v řetězu certifikátů, musíte certifikáty sloučit podle stejného pořadí.

  1. V textovém editoru otevřete každý přijatý certifikát.

  2. Pokud chcete sloučený certifikát uložit, vytvořte soubor s názvem mergedcertificate.crt.

  3. Zkopírujte obsah pro každý certifikát do tohoto souboru. Nezapomeňte postupovat podle pořadí certifikátů určeného řetězem certifikátů. Začněte certifikátem a končit kořenovým certifikátem, například:

    -----BEGIN CERTIFICATE-----
    <your entire Base64 encoded SSL certificate>
    -----END CERTIFICATE-----
    
    -----BEGIN CERTIFICATE-----
    <The entire Base64 encoded intermediate certificate 1>
    -----END CERTIFICATE-----
    
    -----BEGIN CERTIFICATE-----
    <The entire Base64 encoded intermediate certificate 2>
    -----END CERTIFICATE-----
    
    -----BEGIN CERTIFICATE-----
    <The entire Base64 encoded root certificate>
    -----END CERTIFICATE-----
    

Export sloučeného privátního certifikátu do souboru .pfx

Teď exportujte sloučený certifikát TLS/SSL s privátním klíčem, který jste použili k vygenerování žádosti o certifikát. Pokud jste vygenerovali žádost o certifikát pomocí OpenSSL, vytvořili jste soubor privátního klíče.

OpenSSL v3 změnil výchozí šifru z 3DES na AES256. K přepsání změny použijte příkazový řádek -keypbe PBE-SHA1-3DES -certpbe PBE-SHA1-3DES -macalg SHA1 .

OpenSSL v1 používá jako výchozí 3DES, takže soubory .pfx, které jsou generovány, jsou podporovány bez jakýchkoli zvláštních úprav.

  1. Pokud chcete certifikát exportovat do souboru .pfx, spusťte následující příkaz. Zástupné symboly <private-key-file> a <merged-certificate-file> nahraďte cestami k vašemu privátnímu klíči a souboru sloučeného certifikátu.

    openssl pkcs12 -export -out myserver.pfx -inkey <private-key-file> -in <merged-certificate-file>  
    
  2. Po zobrazení výzvy zadejte heslo pro operaci exportu. Když certifikát TLS/SSL nahrajete do služby App Service později, musíte zadat toto heslo.

  3. Pokud jste k vygenerování žádosti o certifikát použili službu IIS nebo Certreq.exe , nainstalujte certifikát do místního počítače a pak certifikát exportujte do souboru .pfx.

Nahrání certifikátu do služby App Service

Teď jste připraveni nahrát certifikát do služby App Service.

  1. Na Azure portal v levém podokně vyberte App Services>.

  2. V levém podokně aplikace vyberte Certifikáty>Přineste si vlastní certifikáty (.pfx)>Nahrát certifikát (.pfx).

    Snímek obrazovky znázorňující stránku správy aplikací s vybranou možností Certifikáty, Přineste si vlastní certifikáty (.pfx) a Nahrát certifikát .pfx

  3. K nahrání certifikátu .pfx použijte následující tabulku:

    Nastavení Popis
    Soubor certifikátu PFX Vyberte soubor .pfx.
    Heslo certifikátu Zadejte heslo, které jste vytvořili při exportu souboru .pfx.
    Přátelský název certifikátu Název certifikátu, který se zobrazí ve webové aplikaci.
  4. Až výběr dokončíte, zvolte Vybrat>ověřit a pak vyberte Přidat.

    Po dokončení operace se certifikát zobrazí v seznamu Přineste si vlastní certifikáty (.pfx).

    Snímek obrazovky znázorňující podokno Přineste si vlastní certifikáty se zobrazeným nahraným certifikátem

  5. Pokud chcete zajistit zabezpečení vlastní domény s tímto certifikátem, musíte vytvořit vazbu certifikátu. Postupujte podle kroků v části Zabezpečení vlastního názvu DNS pomocí vazby TLS/SSL ve službě Aplikace Azure Service.

Nahrání veřejného certifikátu

Veřejné certifikáty jsou podporovány ve formátu .cer .

Po nahrání veřejného certifikátu do aplikace je přístupný jenom aplikací, do které se nahrála. Veřejné certifikáty se musí nahrát do každé jednotlivé webové aplikace, která potřebuje přístup. Scénáře specifické pro službu App Service Environment najdete v dokumentaci k certifikátům a službě App Service Environment.

Na každý plán služby App Service můžete nahrát až 1 000 veřejných certifikátů.

  1. Na Azure portal v levém podokně vyberte App Services>.

  2. V levém podokně aplikace vyberte Certifikáty>veřejných klíčů (.cer)>Přidat certifikát.

  3. K nahrání certifikátu .cer použijte následující tabulku:

    Nastavení Popis
    soubor certifikátu .cer Vyberte .cer soubor.
    Přátelský název certifikátu Název certifikátu, který se zobrazí ve webové aplikaci.
  4. Po dokončení vyberte Přidat.

    Snímek obrazovky se stránkou správy aplikací Zobrazí certifikát veřejného klíče pro nahrání a jeho název.

  5. Po nahrání certifikátu zkopírujte kryptografický otisk certifikátu a zkontrolujte , že je certifikát přístupný.

Prodloužení platnosti certifikátu s vypršenou platností

Před vypršením platnosti certifikátu nezapomeňte do služby App Service přidat obnovený certifikát. Aktualizujte všechny vazby certifikátů, ve kterých proces závisí na typu certifikátu. Například certifikát importovaný ze služby Key Vault, včetně certifikátu služby App Service, se automaticky synchronizuje se službou App Service každých 24 hodin a aktualizuje vazbu TLS/SSL při obnovení certifikátu.

U nahraného certifikátu neexistuje žádná automatická aktualizace vazby. Na základě vašeho scénáře si projděte odpovídající část:

Obnovení nahraného certifikátu

Když nahradíte certifikát s vypršenou platností, může způsob, jakým aktualizujete vazbu certifikátu novým certifikátem, nepříznivě ovlivnit uživatelské prostředí. Vaše příchozí IP adresa se může například změnit při odstranění vazby, i když je tato vazba založená na PROTOKOLU IP. Tento výsledek je zvlášť efektivní, když obnovíte certifikát, který už je v vazbě založené na PROTOKOLU IP.

Pokud se chcete vyhnout změně IP adresy vaší aplikace a vyhnout se výpadkům aplikace kvůli chybám HTTPS, postupujte takto:

  1. Nahrajte nový certifikát.

  2. Přejděte na stránku Vlastní domény vaší aplikace, vyberte tlačítko ... a pak vyberte Aktualizovat vazbu.

  3. Vyberte nový certifikát a pak vyberte Aktualizovat.

  4. Odstraňte existující certifikát.

Obnovení certifikátu importovaného ze služby Key Vault

Pokud chcete obnovit certifikát služby App Service, přečtěte si téma Obnovení certifikátu služby App Service.

Pokud chcete obnovit certifikát, který jste importovali do služby App Service ze služby Key Vault, přečtěte si téma Obnovení certifikátu služby Azure Key Vault.

Po obnovení certifikátu v trezoru klíčů služba App Service automaticky synchronizuje nový certifikát a aktualizuje všechny příslušné vazby certifikátu do 24 hodin. K ruční synchronizaci postupujte takto:

  1. Přejděte na stránku Certifikátu vaší aplikace.

  2. V části Přineste si vlastní certifikáty (.pfx) vyberte tlačítko ... pro importovaný certifikát trezoru klíčů a pak vyberte Synchronizovat.

Nejčastější dotazy

Jak můžu automatizovat proces přidání vlastního certifikátu do aplikace?

Můžu v aplikaci použít certifikát privátní certifikační autority pro příchozí tls?

Pro příchozí TLS můžete použít certifikát od privátní certifikační autority (CA) ve službě App Service Environment verze 3. Tato akce není ve službě App Service (více tenantů) možná. Další informace o multitenantním a jednoklientovém prostředí služby App Service najdete v porovnání App Service Environment v3 a veřejného multitenantního prostředí služby App Service.

Můžu z aplikace uskutečňovat odchozí hovory pomocí privátního certifikátu klienta od certifikační autority?

Tato funkce je podporovaná jenom pro aplikace typu kontejner pro Windows ve službě App Service s více tenanty. Odchozí volání můžete provádět pomocí privátního klientského certifikátu certifikační autority s aplikacemi založenými na kódu i kontejneru ve službě App Service Environment verze 3. Další informace o multitenantním a jednoklientovém prostředí služby App Service najdete v porovnání App Service Environment v3 a veřejného multitenantního prostředí služby App Service.

Můžu načíst certifikát privátní certifikační autority v důvěryhodném kořenovém úložišti služby App Service?

Do důvěryhodného kořenového úložiště ve službě App Service Environment verze 3 lze načíst vlastní CA certifikát. Seznam důvěryhodných kořenových certifikátů ve službě App Service (s více tenanty) nemůžete upravit. Další informace o multitenantním a jednoklientovém prostředí služby App Service najdete v porovnání App Service Environment v3 a veřejného multitenantního prostředí služby App Service.

Dají se certifikáty služby App Service používat pro jiné služby?

Ano. Certifikáty služby App Service můžete exportovat a používat se službou Azure Application Gateway nebo jinými službami. Další informace najdete v článku blogu Vytvoření místní kopie certifikátu služby App Service PFX.