Zuordnen einer vorhandenen benutzerdefinierten Domäne zu Azure Spring Apps
Hinweis
Die Pläne Basic, Standard und Enterprise gelten ab Mitte März 2025 als veraltet und werden über einen Zeitraum von drei Jahren eingestellt. Es wird empfohlen, auf Azure Container Apps umzustellen. Weitere Informationen finden Sie in der Ankündigung zur Einstellung von Azure Spring Apps.
Der Plan Standardverbrauch und dediziert gilt ab dem 30. September 2024 als veraltet und wird nach sechs Monaten vollständig eingestellt. Es wird empfohlen, auf Azure Container Apps umzustellen. Weitere Informationen finden Sie unter Migrieren des Plans „Standardverbrauch und dediziert“ von Azure Spring Apps zu Azure Container Apps.
Dieser Artikel gilt für: ✔️ Java ✔️ C#
Dieser Artikel gilt für: ✔️ Standard ✔️ Enterprise
DNS (Domain Name Service) wird verwendet, um Namen von Netzwerkknoten im gesamten Netzwerk zu speichern. In diesem Artikel wird eine Domäne (beispielsweise www.contoso.com
) mithilfe eines CNAME-Eintrags zugeordnet. Die benutzerdefinierte Domäne wird durch ein Zertifikat geschützt, und Sie erfahren, wie Sie Transport Layer Security (TLS) erzwingen, was auch als Secure Sockets Layer (SSL) bezeichnet wird.
Zertifikate dienen zur Verschlüsselung von Webdatenverkehr. Diese TLS-/SSL-Zertifikate können in Azure Key Vault gespeichert werden.
Voraussetzungen
- Ein Azure-Abonnement. Wenn Sie kein Abonnement besitzen, erstellen Sie ein kostenloses Konto, bevor Sie beginnen.
- (Optional) Azure CLI Version 2.45.0 oder höher. Verwenden Sie den folgenden Befehl, um die Azure Spring Apps-Erweiterung zu installieren:
az extension add --name spring
- Eine in Azure Spring Apps bereitgestellte Anwendung (siehe Schnellstart: Bereitstellen Ihrer ersten Anwendung in Azure Spring Apps mit dem Azure-Portal, oder verwenden Sie eine vorhandene App). Wenn Ihre Anwendung mit dem Standardplan bereitgestellt wird, stellen Sie sicher, dass Sie ein Upgrade auf den Standardplan durchführen.
- Ein Domänenname mit Zugriff auf die DNS-Registrierung für einen Domänenanbieter (beispielsweise GoDaddy).
- Ein privates Zertifikat (d. h. ihr selbst signiertes Zertifikat) von einem Drittanbieter. Das Zertifikat muss der Domäne entsprechen.
- Eine bereitgestellte Instanz von Azure Key Vault. Weitere Informationen finden Sie unter Informationen zu Azure Key Vault.
Überlegungen zu privaten Key Vault-Verbindungen
Die IP-Adressen für die Verwaltung von Azure Spring Apps sind noch nicht Teil der vertrauenswürdigen Azure-Dienste von Microsoft. Damit Azure Spring Apps Zertifikate aus einer Key Vault-Instanz laden kann, die durch private Endpunktverbindungen geschützt ist, müssen Sie daher der Azure Key Vault-Firewall die folgenden IP-Adressen hinzufügen:
20.99.204.111
20.201.9.97
20.74.97.5
52.235.25.35
20.194.10.0
20.59.204.46
104.214.186.86
52.153.221.222
52.160.137.39
20.39.142.56
20.199.190.222
20.79.64.6
20.211.128.96
52.149.104.144
20.197.121.209
40.119.175.77
20.108.108.22
102.133.143.38
52.226.244.150
20.84.171.169
20.93.48.108
20.75.4.46
20.78.29.213
20.106.86.34
20.193.151.132
Importieren des Zertifikats
Vorbereiten der Zertifikatsdatei als PFX (optional)
Azure Key Vault unterstützt das Importieren eines privaten Zertifikats im PEM- und PFX-Format. Wenn die PEM-Datei, die Sie von Ihrem Zertifikatanbieter erhalten haben, im Abschnitt Speichern des Zertifikats in Key Vault nicht funktioniert, führen Sie die hier beschriebenen Schritte aus, um eine PFX-Datei für Azure Key Vault zu generieren.
Zusammenführen von Zwischenzertifikaten
Wenn Ihre Zertifizierungsstelle Ihnen mehrere Zertifikate in der Zertifikatskette bereitstellt, müssen Sie die Zertifikate nacheinander zusammenführen.
Öffnen Sie für diese Aufgabe alle Zertifikate, die Sie erhalten haben, in einem Text-Editor.
Erstellen Sie eine Datei für das zusammengeführte Zertifikat mit dem Namen mergedcertificate.crt. Kopieren Sie den Inhalt der einzelnen Zertifikate in einem Text-Editor in diese Datei. Die Reihenfolge Ihrer Zertifikate sollte der Reihenfolge in der Zertifikatkette folgen, beginnend mit Ihrem Zertifikat und endend mit dem Stammzertifikat. Dies sieht in etwa wie im folgenden Beispiel aus:
-----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-----
Exportieren des Zertifikats als PFX-Datei
Exportieren Sie Ihr zusammengeführtes TLS-/SSL-Zertifikat mit dem privaten Schlüssel, mit dem Ihre Zertifikatanforderung generiert wurde.
Wenn Sie die Zertifikatanforderung mittels OpenSSL generiert haben, haben Sie eine Datei des privaten Schlüssels erstellt. Führen Sie folgenden Befehl aus, um Ihr Zertifikat nach PFX zu exportieren. Ersetzen Sie die Platzhalter <private-key-file> und <merged-certificate-file> durch die Pfade zu Ihrem privaten Schlüssel und Ihrer zusammengeführten Zertifikatdatei.
openssl pkcs12 -export -out myserver.pfx -inkey <private-key-file> -in <merged-certificate-file>
Definieren Sie ein Kennwort für den Export, wenn Sie dazu aufgefordert werden. Verwenden Sie dieses Kennwort, wenn Sie Ihr TLS/SSL-Zertifikat zu einem späteren Zeitpunkt in Azure Key Vault hochladen.
Wenn Sie IIS oder Certreq.exe zum Generieren Ihrer Zertifikatanforderung verwendet haben, installieren Sie das Zertifikat auf dem lokalen Computer, und klicken Sie anschließend auf Zertifikat nach PFX exportieren.
Speichern eines Zertifikats in Key Vault
Zum Importieren eines Zertifikats muss sich die PEM- oder PFX-codierte Datei auf dem Datenträger befinden, und Sie müssen über den privaten Schlüssel verfügen.
Führen Sie die folgenden Schritte aus, um Ihr Zertifikat in den Schlüsseltresor hochzuladen:
Navigieren Sie zu Ihrer Schlüsseltresorinstanz.
Wählen Sie im Navigationsbereich Zertifikate aus.
Wählen Sie im oberen Menü Generieren/importieren aus.
Wählen Sie auf der Seite Zertifikat erstellen die Option Importieren für Methode der Zertifikaterstellung aus, und geben Sie dann einen Wert für den Zertifikatnamen an.
Navigieren Sie unter Zertifikatdatei hochladen zum Speicherort des Zertifikats, und wählen Sie die Datei aus.
Unter Kennwort geben Sie, wenn Sie eine kennwortgeschützte Zertifikatsdatei hochladen, hier das Kennwort an. Lassen Sie dieses Feld andernfalls leer. Nachdem die Zertifikatsdatei erfolgreich importiert wurde, entfernt der Schlüsseltresor das Kennwort.
Klicken Sie auf Erstellen.
Gewähren von Zugriff auf Ihren Schlüsseltresor für Azure Spring Apps
Sie müssen Azure Spring Apps Zugriff auf Ihren Schlüsseltresor gewähren, bevor Sie das Zertifikat importieren.
Führen Sie die folgenden Schritte aus, um den Zugriff über das Azure-Portal zu gewähren:
Navigieren Sie zu Ihrer Schlüsseltresorinstanz.
Wählen Sie im Navigationsbereich Zugriffsrichtlinien aus.
Wählen Sie im oberen Menü Erstellen aus.
Geben Sie die Informationen ein, wählen Sie die Schaltfläche Hinzufügen aus, und Erstellen Sie die Zugriffsrichtlinie.
Geheimnisberechtigung Zertifikatsberechtigung Prinzipal auswählen Get, List Get, List Azure Spring Apps-Domänenverwaltung Hinweis
Wenn Sie „Azure Spring Apps Domänenverwaltung“ nicht finden, suchen Sie nach „Azure Spring Cloud Domänenverwaltung“.
Importieren eines Zertifikats in Azure Spring Apps
Führen Sie die folgenden Schritte aus, um ein Zertifikat zu importieren:
Navigieren Sie zu Ihrer Azure Spring Apps-Instanz.
Wählen Sie im Navigationsbereich TLS/SSL-Einstellungen aus.
Wählen Sie Key Vault-Zertifikat importieren aus.
Wählen Sie auf der Seite Zertifikat von Azure auswählen das Abonnement, den Schlüsseltresor und das Zertifikat aus den Dropdownoptionen und wählen Sie dann Auswählen.
Geben Sie auf der geöffneten Seite Zertifikatname festlegen Ihren Zertifikatnamen ein, wählen Sie bei Bedarf die Option Automatische Synchronisierung und dann Übernehmen. Weitere Informationen finden Sie im Abschnitt Zertifikat automatisch synchronisieren.
Wenn Ihr Zertifikat erfolgreich importiert wurde, wird es in der Liste Private Schlüsselzertifikate angezeigt.
Wichtig
Das Zertifikat muss unbedingt an eine benutzerdefinierte Domäne gebunden werden, um sie mit diesem Zertifikat zu schützen. Weitere Informationen finden Sie im Abschnitt SSL-Bindung hinzufügen.
Automatische Synchronisierung des Zertifikats
Ein in Azure Key Vault gespeichertes Zertifikat wird manchmal verlängert, bevor es abläuft. Ebenso müssen die Sicherheitsrichtlinien Ihrer Organisation für die Zertifikatverwaltung möglicherweise Ihr DevOps-Team regelmäßig durch neue Zertifikate ersetzen. Nachdem Sie die automatische Synchronisierung für ein Zertifikat aktiviert haben, beginnt Azure Spring Apps, Ihren Schlüsseltresor regelmäßig für eine neue Version zu synchronisieren – in der Regel alle 24 Stunden. Wenn eine neue Version verfügbar ist, importiert Azure Spring Apps sie und lädt sie dann für verschiedene Komponenten neu, die das Zertifikat verwenden, ohne Ausfallzeiten zu verursachen. Die folgende Liste zeigt die betroffenen Komponenten und relevanten Szenarien:
- App
- Benutzerdefinierte Domäne
- VMware Spring Cloud Gateway
- Benutzerdefinierte Domäne
- API-Portal für VMware Tanzu
- Benutzerdefinierte Domäne
- VMware Tanzu Application Accelerator
- Herstellen einer Verbindung mit einem Git-Repository mit einem selbstsignierten Zertifikat.
- Anwendungskonfigurationsdienst für Tanzu
- Herstellen einer Verbindung mit einem Git-Repository mit einem selbstsignierten Zertifikat.
Wenn Azure Spring Apps ein Zertifikat importiert oder neu lädt, wird ein Aktivitätsprotokoll generiert. Um die Aktivitätsprotokolle anzuzeigen, navigieren Sie im Azure-Portal zu Ihrer Azure Spring Apps-Instanz, und wählen Sie im Navigationsbereich Aktivitätsprotokoll aus.
Hinweis
Das Feature für die automatische Synchronisierung des Zertifikats funktioniert mit privaten Zertifikaten und öffentlichen Zertifikaten, die aus Azure Key Vault importiert wurden. Dieses Feature ist für Inhaltszertifikate, die der Kunde hochlädt, nicht verfügbar.
Sie können das Feature für die automatische Zertifikatsynchronisierung aktivieren oder deaktivieren, wenn Sie ein Zertifikat aus Ihrem Schlüsseltresor in Azure Spring Apps importieren. Weitere Informationen finden Sie im Abschnitt Importieren eines Zertifikats in Azure Spring Apps.
Sie können dieses Feature auch für ein Zertifikat aktivieren oder deaktivieren, das bereits in Azure Spring Apps importiert wurde.
Führen Sie die folgenden Schritte aus, um die automatische Synchronisierung für ein importiertes Zertifikat zu aktivieren oder zu deaktivieren:
Wechseln Sie zur Liste der Zertifikate für Private Schlüsselzertifikate oder Öffentliche Schlüsselzertifikate.
Wählen Sie die Auslassungspunkte (...) nach der Spalte Automatische Synchronisierung aus, und wählen Sie dann entweder Automatische Synchronisierung aktivieren oderAutomatische Synchronisierung deaktivieren aus.
Hinzufügen einer benutzerdefinierten Domäne
Sie können einen CNAME-Eintrag verwenden, um Azure Spring Apps einen benutzerdefinierten DNS-Namen zuzuordnen.
Hinweis
Der A-Eintrag wird nicht unterstützt.
Erstellen des CNAME-Eintrags
Wechseln Sie zu Ihrem DNS-Anbieter, und fügen Sie einen CNAME-Eintrag hinzu, um Ihre Domäne <service-name>.azuremicroservices.io
zuzuordnen. Hier ist <service-name>
der Name Ihrer Azure Spring Apps-Instanz. Für Domäne und Unterdomäne werden Platzhalter unterstützt.
Nach dem Hinzufügen des CNAME-Eintrags sieht die Seite mit den DNS-Einträgen in etwa wie folgt aus:
Zuordnen Ihrer benutzerdefinierten Domäne zur Azure Spring Apps-App
Wenn Sie nicht über eine Anwendung in Azure Spring Apps verfügen, befolgen Sie die Anweisungen in der Schnellstartanleitung: Bereitstellen Ihrer ersten Anwendung in Azure Spring Apps.
Führen Sie die folgenden Schritte aus, um eine benutzerdefinierte Domäne an die App zu binden:
Navigieren Sie zur Anwendungsseite.
Wählen Sie Benutzerdefinierte Domäne aus.
Wählen Sie Benutzerdefinierte Domäne hinzufügen aus.
Geben Sie den vollqualifizierten Domänennamen (FQDN) ein, für den Sie einen CNAME-Eintrag hinzugefügt haben (z. B.
www.contoso.com
). Stellen Sie sicher, dass der Typ des Hostnameneintrags auf CNAME (<service-name>.azuremicroservices.io
) festgelegt ist.Wählen Sie Überprüfen aus, um die Schaltfläche Hinzufügen zu aktivieren.
Wählen Sie Hinzufügen.
Eine App kann über mehrere Domänen verfügen, eine Domäne kann jedoch nur einer einzelnen App zugeordnet werden. Wenn Sie Ihre benutzerdefinierte Domäne erfolgreich der App zugeordnet haben, wird sie in der Tabelle der benutzerdefinierten Domänen angezeigt.
Hinweis
Ist Ihre benutzerdefinierte Domäne mit Nicht sicher gekennzeichnet, wurde sie noch nicht an ein SSL-Zertifikat gebunden. Jede HTTPS-Anforderung von einem Browser an Ihre benutzerdefinierte Domäne erhält einen Fehler oder eine Warnung.
Hinzufügen von SSL-Bindung
Führen Sie die folgenden Schritte aus, um eine benutzerdefinierte Domäne der App zu aktualisieren:
Wählen Sie in der Tabelle mit den benutzerdefinierten Domänen die Option Add ssl binding (SSL-Bindung hinzufügen) aus, wie in der vorherigen Abbildung zu sehen.
Wählen Sie unter Zertifikat Ihr Zertifikat aus, oder importieren Sie es.
Wählen Sie Speichern.
Nach erfolgreichem Hinzufügen der SSL-Bindung ist der Domänenzustand „sicher“: Fehlerfrei.
Erzwingen von HTTPS
Standardmäßig können Benutzer weiterhin über HTTP auf Ihre App zugreifen, alle HTTP-Anforderungen können jedoch an den HTTPS-Port umgeleitet werden.
Wählen Sie in der Navigation Ihrer App-Seite Benutzerdefinierte Domäne aus. Legen Sie dann Nur HTTPS auf Yes
fest.
Navigieren Sie nach Abschluss des Vorgangs zu einer beliebigen HTTPS-URL, die auf Ihre App verweist. Beachten Sie, dass HTTP-URLs nicht funktionieren.