Konfigurieren von privaten Endpunkten in Azure Static Web Apps
Sie können einen privaten Endpunkt (auch private Verbindung) verwenden, um den Zugriff auf Ihre statische Web-App zu beschränken, damit diese nur über Ihr privates Netzwerk zugänglich ist.
Funktionsweise
Das virtuelle Netzwerk (VNet) von Azure ist ein Netzwerk wie in einem herkömmlichen Rechenzentrum, doch die Ressourcen im VNet kommunizieren miteinander auf sichere Weise über das Microsoft Backbone-Netzwerk.
Durch die Konfiguration von Static Web Apps mit einem privaten Endpunkt können Sie eine private IP-Adresse aus Ihrem VNet verwenden. Nachdem diese Verbindung hergestellt wurde, ist Ihre statische Web-App in Ihr VNet integriert. Danach ist Ihre statische Web-App nicht mehr für das öffentliche Internet verfügbar und nur noch von Computern in Ihrem Azure VNet zugänglich.
Hinweis
Wenn Sie Ihre Anwendung hinter einem privaten Endpunkt platzieren, ist Ihre App nur in der Region verfügbar, in der sich Ihr VNet befindet. Danach ist Ihre Anwendung nicht mehr über mehrere Points of Presence verfügbar.
Wenn für Ihre App ein privater Endpunkt aktiviert ist, antwortet der Server mit einem 403
-Statuscode, wenn die Anforderung von einer öffentlichen IP-Adresse stammt. Dieses Verhalten gilt sowohl für die Produktionsumgebung als auch für alle Stagingumgebungen. Die einzige Möglichkeit, die App zu erreichen, ist die Verwendung des privaten Endpunkts, der in Ihrem VNet bereitgestellt wird.
Die DNS-Standardauflösung der statischen Web-App ist weiterhin vorhanden und wird an eine öffentliche IP-Adresse weitergeleitet. Der private Endpunkt macht zwei IP-Adressen in Ihrem VNet verfügbar, eine für die Produktionsumgebung und eine für alle Stagingumgebungen. Um sicherzustellen, dass Ihr Client die App ordnungsgemäß erreichen kann, stellen Sie sicher, dass Ihr Client den Hostnamen der App in die entsprechende IP-Adresse des privaten Endpunkts auflöst. Dies ist für den Standardhostnamen sowie für alle benutzerdefinierten Domänen erforderlich, die für die statische Web-App konfiguriert sind. Diese Lösung erfolgt automatisch, wenn Sie beim Erstellen des privaten Endpunkts eine private DNS-Zone auswählen (siehe Beispiel unten). Dies ist die empfohlene Lösung.
Wenn Sie eine Verbindung von einem lokalen Computer aus herstellen oder keine private DNS-Zone verwenden möchten, konfigurieren Sie die DNS-Datensätze für Ihre Anwendung manuell, sodass Anforderungen an die entsprechende IP-Adresse des privaten Endpunkts weitergeleitet werden. Weitere Informationen zur DNS-Auflösung privater Endpunkte finden Sie hier.
Hinweis
Private Endpunkte beschränken den auf einer Website eingehenden Datenverkehr auf ein bestimmtes virtuelles Netzwerk. Sie gelten nicht für Bereitstellungen neuer Websiteobjekte.
Voraussetzungen
- Ein Azure-Konto mit einem aktiven Abonnement.
- Sie können kostenlos ein Konto erstellen.
- Ein Azure VNet
- Eine mit Azure Static Web Apps bereitgestellte Anwendung, die den Standard-Hostingplan nutzt.
Erstellen eines privaten Endpunkts
In diesem Abschnitt erstellen Sie einen privaten Endpunkt für Ihre statische Web-App.
Wichtig
Ihre statische Web-App muss mit dem Standard-Hostingplan bereitgestellt werden, um private Endpunkte nutzen zu können. Sie können den Hostingplan über die Option Hostingplan im seitlichen Menü ändern.
Öffnen Sie Ihre statische Web-App im Portal.
Wählen Sie die Option Private Endpunkte aus dem seitlichen Menü aus.
Wählen Sie Hinzufügen.
Geben Sie im Dialog „Privaten Endpunkt hinzufügen“ diese Informationen ein:
Einstellung Wert Name Geben Sie myPrivateEndpoint ein. Abonnement Wählen Sie Ihr Abonnement aus. Virtual Network Wählen Sie Ihr virtuelles Netzwerk aus. Subnet Wählen Sie das Subnetz aus. Integration in eine private DNS-Zone Übernehmen Sie den Standardwert Ja. Klicken Sie auf OK.
Hinweis
Der Name der privaten DNS-Zone hängt vom standardmäßigen Domänennamensuffix der statischen Web-App ab. Wenn das standardmäßige Domänensuffix der App beispielsweise 3.azurestaticapps.net
ist, lautet der Name der privaten DNS-Zone privatelink.3.azurestaticapps.net
. Wenn eine neue statische Web-App erstellt wird, unterscheidet sich das standardmäßige Domänensuffix möglicherweise von den standardmäßigen Domänensuffixen früherer statischer Web-Apps. Wenn Sie einen automatisierten Bereitstellungsprozess zum Erstellen der privaten DNS-Zone verwenden, können Sie die Eigenschaft DefaultHostname
in Ihrer App verwenden, um das Domänensuffix programmgesteuert zu extrahieren. Der Wert der Eigenschaft DefaultHostname
ähnelt <STATIC_WEB_APP_DEFAULT_DOMAIN_PREFIX>.<PARTITION_ID>.azurestaticapps.net
oder STATIC_WEB_APP_DEFAULT_DOMAIN_PREFIX.azurestaticapps.net
. Das standardmäßige Domänensuffix ähnelt <PARTITION_ID>.azurestaticapps.net
oder azurestaticapps.net
.
Testen Ihres privaten Endpunkts
Da Ihre Anwendung nicht mehr öffentlich verfügbar ist, können Sie nur innerhalb Ihres virtuellen Netzwerks darauf zugreifen. Zum Testen richten Sie einen virtuellen Computer innerhalb Ihres virtuellen Netzwerks ein und navigieren zu Ihrer Site.