Megosztás a következőn keresztül:


HTTPS engedélyezése egyéni tartományhoz az Azure App Service-ben

Fontos

2025. július 28-tól az App Service által felügyelt tanúsítványok (ASMC) módosításai hatással lesznek a tanúsítványok kiállítására és megújítására bizonyos esetekben. Bár a legtöbb ügyfélnek nem kell lépéseket tennie, javasoljuk, hogy tekintse át az ASMC részletes blogbejegyzését további információkért.

Ez a cikk bemutatja, hogyan biztosíthat biztonságot az egyéni tartomány számára az Azure App Service-alkalmazásban vagy függvényalkalmazásban egy tanúsítványkötés létrehozásával. Ha végzett, az App Service-alkalmazást az https:// egyéni tartománynévrendszer (DNS) nevének végpontján érheti el. Például: https://www.contoso.com.

Képernyőkép egy egyéni TLS/SSL-tanúsítvánnyal rendelkező webalkalmazásról.

Előfeltételek

A kötés hozzáadása

Az Azure Portalon:

  1. A bal oldali panelen válassza az App Services-alkalmazás><nevét>.

  2. Az alkalmazás bal oldali ablaktábláján válassza az Egyéni tartományok lehetőséget.

  3. Az egyéni tartomány mellett válassza a Kötés hozzáadása lehetőséget.

    Képernyőkép a TLS/SSL-kötés hozzáadása párbeszédpanel megnyitásáról.

  4. Ha az alkalmazás már rendelkezik a kijelölt egyéni tartományhoz tartozó tanúsítvánnyal, a tanúsítványban kiválaszthatja. Ha nem, akkor a Forrás elem egyik kijelölésével kell hozzáadnia egy tanúsítványt:

    • Felügyelt App Service-tanúsítvány létrehozása: Lehetővé teszi, hogy az App Service létrehozhasson egy felügyelt tanúsítványt a kiválasztott tartományhoz. Ez a beállítás a legegyszerűbb. További információ: Ingyenes felügyelt tanúsítvány létrehozása.
    • App Service-tanúsítvány importálása: Az App Service-tanúsítványban válassza ki a kiválasztott tartományhoz vásárolt App Service-tanúsítványt .
    • Tanúsítvány feltöltése (.pfx): Kövesse a magántanúsítvány feltöltésekor a munkafolyamatot, és töltsön fel egy PFX-tanúsítványt a helyi gépről, és adja meg a tanúsítvány jelszavát.
    • Importálás a Key Vaultból: Válassza a Key Vault-tanúsítvány kiválasztása lehetőséget, és válassza ki a tanúsítványt a párbeszédpanelen.
  5. TLS/SSL típus esetén válassza az SNI SSL vagy AZ IP-alapú SSL-t:

    • SNI SSL: Több kiszolgálónév-jelzési (SNI) biztonságos kapcsolat (SSL) kötést is hozzáadhat. Ezzel a beállítással több transport layer security (TLS)/SSL-tanúsítvány is biztosítható, hogy több tartományt is biztonságossá tegye ugyanazon az IP-címen. A legtöbb modern böngésző (például a Microsoft Edge, a Chrome, a Firefox és az Opera) támogatja az SNI-t. (További információ: Kiszolgálónév jelzése.)
    • IP-alapú SSL: Csak egy IP SSL-kötést adhat hozzá. Ez a beállítás csak egy TLS/SSL-tanúsítványt engedélyez a dedikált nyilvános IP-cím biztonságossá tételéhez. A kötés konfigurálása után kövesse az IP-alapú SSL rekordjainak újraképezése lépéseit. Az IP-alapú SSL csak a Standard szinten vagy annál magasabb szinten támogatott.
  6. Új tanúsítvány hozzáadásakor válassza az Ellenőrzés lehetőséget az új tanúsítvány érvényesítéséhez.

  7. Válassza a Hozzáadás lehetőséget.

    A művelet befejezése után az egyéni tartomány TLS-/SSL-állapota védettre változik.

    A tanúsítványkötéssel védett egyéni tartomány képernyőképe.

    Az egyéni tartományokban a biztonságos állapot azt jelenti, hogy a tanúsítvány biztonságot nyújt. Az App Service nem ellenőrzi, hogy a tanúsítvány önaláírt vagy lejárt-e, ami azt is okozhatja, hogy a böngészők hibát vagy figyelmeztetést jelenítenek meg.

IP-alapú SSL rekordjainak újraképe

Erre a lépésre csak IP-alapú SSL esetén van szükség. SNI SSL-kötés esetén ugorjon a HTTPS tesztelésére.

Lehetséges, hogy két módosítást kell végrehajtania:

  • Az alkalmazás alapértelmezés szerint megosztott nyilvános IP-címet használ. Ha egy tanúsítványt IP SSL-sel köt meg, az App Service létrehoz egy új, dedikált IP-címet az alkalmazás számára. Ha egy A rekordot hozzárendelt az alkalmazáshoz, frissítse a tartományregisztrációs adatbázist ezzel az új, dedikált IP-címmel.

    Az alkalmazás egyéni tartománylapja frissül az új, dedikált IP-címmel. Másolja ki ezt az IP-címet, majd másolja újra az A rekordot erre az új IP-címre.

  • Ha SNI SSL-kötéssel <app-name>.azurewebsites.netrendelkezik, a CNAME-megfeleltetések átképezése helyett mutasson rá sni.<app-name>.azurewebsites.net . (Adja hozzá az sni előtagot.)

HTTPS tesztelése

Tallózással https://<your.custom.domain> ellenőrizze, hogy megjelenik-e az alkalmazás a különböző böngészőkben.

Képernyőkép az egyéni tartomány böngészéséről. A contoso.com URL-cím ki van emelve.

Az alkalmazáskód a fejlécen keresztül ellenőrizheti a protokollt x-appservice-proto . A fejléc értéke vagy httpértéke https .

Ha az alkalmazás tanúsítványérvényesítési hibákat jelez, valószínűleg önaláírt tanúsítványt használ. Ha ez nem így van, akkor valószínűleg kihagyta a köztes tanúsítványokat, amikor exportálta a tanúsítványt a .pfx fájlba.

Gyakori kérdések

Hogyan győződjön meg arról, hogy az alkalmazás IP-címe nem változik a tanúsítványkötés módosításakor?

A bejövő IP-cím akkor is változhat, ha töröl egy kötést, még akkor is, ha a kötés IP SSL. Ez a viselkedés különösen akkor fontos, ha egy már IP SSL-kötésben lévő tanúsítványt újít meg. Az alkalmazás IP-címének módosításának elkerülése érdekében kövesse az alábbi lépéseket:

  1. Töltse fel az új tanúsítványt.
  2. Kösse az új tanúsítványt a kívánt egyéni tartományhoz a régi törlése nélkül. Ez a művelet lecserélni a kötést ahelyett, hogy eltávolítaná a régit.
  3. Törölje a régi tanúsítványt.

Letilthatom a HTTP-ről HTTPS-be történő kényszerített átirányítást?

Az App Service alapértelmezés szerint átirányítja a HTTP-kérelmeket a HTTPS-hez. A viselkedés letiltásához tekintse meg az általános beállítások konfigurálását.

Hogyan módosíthatom az alkalmazás minimális TLS-verzióit?

Az alkalmazás alapértelmezés szerint engedélyezi a TLS 1.2-t. Az olyan iparági szabványok, mint a PCI DSS , ezt a TLS-szintet javasolják. A különböző TLS-verziók kényszerítéséhez lásd az általános beállítások konfigurálását.

Hogyan kezelni a TLS-leállítást az App Service-ben?

Az App Service-ben a TLS-leállítás a hálózati terheléselosztóknál történik, így minden HTTPS-kérés titkosítatlan HTTP-kérésként éri el az alkalmazást. Ha az alkalmazáslogikának ellenőriznie kell, hogy a felhasználói kérések titkosítva vannak-e, vizsgálja meg a fejlécet X-Forwarded-Proto .

A nyelvspecifikus konfigurációs útmutatók, például a Linux Node.js konfigurációs útmutatója bemutatják, hogyan észlelhet HTTPS-munkameneteket az alkalmazáskódban.

Automatizálás szkriptekkel

Azure CLI (Az Azure parancssori felülete)

Egyéni TLS/SSL-tanúsítvány kötése webalkalmazáshoz

PowerShell

$fqdn="<Replace with your custom domain name>"
$pfxPath="<Replace with path to your .PFX file>"
$pfxPassword="<Replace with your .PFX password>"
$webappname="mywebapp$(Get-Random)"
$location="West Europe"

# Create a resource group.
New-AzResourceGroup -Name $webappname -Location $location

# Create an App Service plan in Free tier.
New-AzAppServicePlan -Name $webappname -Location $location `
-ResourceGroupName $webappname -Tier Free

# Create a web app.
$webapp = New-AzWebApp -Name $webappname -Location $location -AppServicePlan $webappname `
-ResourceGroupName $webappname

Write-Host "Sign in to your domain provider's website and configure the following records:"
Write-Host "A CNAME record that maps $fqdn to $webappname.azurewebsites.net"
Write-Host "A TXT record that maps asuid.$fqdn to the domain verification ID $($webapp.CustomDomainVerificationId)"
Read-Host "Press [Enter] key when ready ..."

# Before continuing, go to your DNS configuration UI for your custom domain and follow the 
# instructions at https://aka.ms/appservicecustomdns to configure a CNAME record for the 
# hostname "www" and point it your web app's default domain name.

# Upgrade App Service plan to Basic tier (minimum required by custom SSL certificates)
Set-AzAppServicePlan -Name $webappname -ResourceGroupName $webappname `
-Tier Basic

# Add a custom domain name to the web app. 
Set-AzWebApp -Name $webappname -ResourceGroupName $webappname `
-HostNames @($fqdn,"$webappname.azurewebsites.net")

# Upload and bind the SSL certificate to the web app.
New-AzWebAppSSLBinding -WebAppName $webappname -ResourceGroupName $webappname -Name $fqdn `
-CertificateFilePath $pfxPath -CertificatePassword $pfxPassword -SslState SniEnabled