Share via


Zertifikate und die App Service-Umgebung

Hinweis

In diesem Artikel wird die App Service-Umgebung V3 beschrieben, die mit App Service-Plänen vom Typ „Isoliert V2“ verwendet wird.

Die App Service-Umgebung ist eine Bereitstellung von Azure App Service, die in Ihrem virtuellen Azure-Netzwerk ausgeführt wird. Sie kann mit einem über das Internet zugänglichen Anwendungsendpunkt oder einem Anwendungsendpunkt in Ihrem virtuellen Netzwerk bereitgestellt werden. Wenn Sie die App Service-Umgebung mit einem über das Internet zugänglichen Endpunkt bereitstellen, wird diese Bereitstellung als externe App Service-Umgebung bezeichnet. Wenn Sie die App Service-Umgebung mit einem Endpunkt in Ihrem virtuellen Netzwerk bereitstellen, wird diese Bereitstellung als ILB-App Service-Umgebung bezeichnet. Weitere Informationen zur ILB-App Service-Umgebung finden Sie im Dokument Erstellen einer App Service-Umgebung.

Anwendungszertifikate

Anwendungen, die in einer App Service-Umgebung gehostet werden, unterstützen die folgenden App-orientierten Zertifikatsfunktionen, die auch im mandantenfähigen App Service-Dienst verfügbar sind. Voraussetzungen und Anweisungen zum Hochladen und Verwalten dieser Zertifikate finden Sie unter Hinzufügen eines TLS-/SSL-Zertifikats in Azure App Service.

Nach dem Hinzufügen eines Zertifikats zu Ihrer App Service- oder Funktions-App können Sie damit einen benutzerdefinierten Domänennamen schützen oder es in Ihrem Anwendungscode verwenden.

Einschränkungen

Von App Service verwaltete Zertifikate werden für Apps, die in einer App Service-Umgebung gehostet werden, nicht unterstützt.

TLS-Einstellungen

Sie können die TLS-Einstellung auf App-Ebene konfigurieren.

Privates Clientzertifikat

Ein häufiger Anwendungsfall ist die Konfiguration Ihrer App als Client in einem Client/Server-Modell. Wenn Sie Ihren Server mit einem privaten ZS-Zertifikat schützen, müssen Sie das Clientzertifikat (.cer-Datei) in Ihre Anwendung hochladen. Die folgenden Anweisungen laden Zertifikate in den Vertrauensspeicher der Worker, in denen Ihre Anwendung ausgeführt wird. Sie müssen das Zertifikat nur einmal hochladen, um es mit Apps im gleichen App Service-Plan verwenden zu können.

Hinweis

Private Clientzertifikate werden nur von benutzerdefiniertem Code in Windows-Code-Apps unterstützt. Private Clientzertifikate werden außerhalb der App nicht unterstützt. Dadurch wird die Verwendung in Szenarien wie dem Pullen des App-Containerimages aus einer Registrierung mithilfe eines privaten Zertifikats und der TLS-Überprüfung über die Front-End-Server mithilfe eines privaten Zertifikats eingeschränkt.

Führen Sie die folgenden Schritte aus, um das Zertifikat (Datei vom Typ .cer) in Ihre App in der App Service-Umgebung hochzuladen. Die Datei vom Typ .cer kann aus Ihrem Zertifikat exportiert werden. Zu Testzwecken gibt es am Ende ein PowerShell-Beispiel, um ein temporäres selbstsigniertes Zertifikat zu generieren:

  1. Wechseln Sie zu der App im Azure-Portal, die das Zertifikat benötigt.

  2. Wechseln Sie in der Anwendung zu Zertifikate. Wählen Sie Öffentliches Schlüsselzertifikat (CER) aus. Klicken Sie auf Zertifikat hinzufügen. Geben Sie einen Namen ein. Navigieren Sie zu Ihrer CER-Datei und wählen Sie sie aus. Wählen Sie „Hochladen“ aus.

  3. Kopieren Sie den Fingerabdruck.

  4. Wechseln Sie zu Konfiguration>Anwendungseinstellungen. Erstellen Sie die Anwendungseinstellung WEBSITE_LOAD_ROOT_CERTIFICATES mit dem Fingerabdruck als Wert. Wenn Sie über mehrere Zertifikate verfügen, können Sie diese in derselben Einstellung einfügen, getrennt durch Kommas und ohne Leerzeichen wie

    84EC242A4EC7957817B8E48913E50953552DAFA6,6A5C65DC9247F762FE17BF8D4906E04FE6B31819

Das Zertifikat ist für alle Anwendungen im gleichen App Service-Plan wie die App verfügbar, die diese Einstellung konfiguriert hat, aber für alle Anwendungen, die von dem privaten ZS-Zertifikat abhängig sind, sollte die Anwendungseinstellung konfiguriert sein, um Zeitprobleme zu vermeiden.

Wenn es für Anwendungen in einem anderen App Service-Plan verfügbar sein soll, müssen Sie den App-Einstellungsvorgang für die Anwendungen in diesem App Service-Plan wiederholen. Um zu überprüfen, ob das Zertifikat festgelegt ist, wechseln Sie zur Kudu-Konsole, und geben Sie den folgenden Befehl in die PowerShell-Debugkonsole ein:

dir Cert:\LocalMachine\Root

Sie können zum Testen ein selbstsigniertes Zertifikat erstellen und eine CER-Datei mit der folgenden PowerShell generieren:

$certificate = New-SelfSignedCertificate -CertStoreLocation "Cert:\LocalMachine\My" -DnsName "*.internal.contoso.com","*.scm.internal.contoso.com"

$certThumbprint = "Cert:\LocalMachine\My\" + $certificate.Thumbprint
$fileName = "exportedcert.cer"
Export-Certificate -Cert $certThumbprint -FilePath $fileName -Type CERT

Privates Serverzertifikat

Wenn Ihre Anwendung als Server in einem Client/Server-Modell fungiert, entweder hinter einem Reverseproxy oder direkt mit einem privaten Client und Sie ein privates ZS-Zertifikat verwenden, müssen Sie das Serverzertifikat (PFX-Datei) mit der vollständigen Zertifikatskette in Ihre Anwendung hochladen und das Zertifikat an die benutzerdefinierte Domäne binden. Da die Infrastruktur für Ihre App Service-Umgebung dediziert ist, wird die vollständige Zertifikatskette dem Vertrauensspeicher der Server hinzugefügt. Sie müssen das Zertifikat nur einmal hochladen, um es mit Anwendungen in der gleichen App Service-Umgebung zu verwenden.

Hinweis

Wenn Sie Ihr Zertifikat vor dem 1. Oktober 2023 hochgeladen haben, müssen Sie das Zertifikat erneut hochladen und neu binden, damit die vollständige Zertifikatskette den Servern hinzugefügt wird.

Befolgen Sie das Tutorial Sichere benutzerdefinierte Domäne mit TLS/SSL, um Ihr privates ZS-Stammzertifikat in die Anwendung in Ihrer App Service-Umgebung hochzuladen/zu binden.

Nächste Schritte