Verwenden von Azure Front Door mit Azure Storage-Blobs

Azure Front Door beschleunigt die Bereitstellung statischer Inhalte aus Azure Storage-Blobs und ermöglicht eine sichere und skalierbare Architektur. Die Bereitstellung statischer Inhalte ist für viele verschiedene Anwendungsfälle nützlich, einschließlich Websitehosting und Dateiübermittlung.

Aufbau

Diagram of Azure Front Door with a blob storage origin.

In dieser Referenzarchitektur stellen Sie ein Speicherkonto und ein Front Door-Profil mit einem einzelnen Ursprung bereit.

Datenfluss

Die Daten durchlaufen das Szenario wie folgt:

  1. Der Client stellt mithilfe eines benutzerdefinierten Domänennamens und eines von Front Door bereitgestellten TLS-Zertifikats eine sichere Verbindung mit Azure Front Door her. Die Verbindung des Clients endet an einem nahe gelegenen Front Door Point of Presence (PoP).
  2. Die Front Door Web Application Firewall (WAF) überprüft die Anforderung. Wenn die WAF feststellt, dass die Risikostufe der Anforderung zu hoch ist, blockiert sie die Anforderung, und Front Door gibt als Antwort einen Fehler vom Typ „HTTP 403“ zurück.
  3. Wenn der Cache des Front Door PoP eine gültige Antwort für diese Anforderung enthält, gibt Front Door die Antwort sofort zurück.
  4. Andernfalls sendet der PoP die Anforderung über das Backbonenetzwerk von Microsoft an das Ursprungsspeicherkonto (unabhängig von dessen Standort). Der PoP stellt mithilfe einer separaten, langlebigen TCP-Verbindung eine Verbindung mit dem Speicherkonto her. In diesem Szenario wird Private Link verwendet, um eine sichere Verbindung mit dem Speicherkonto herzustellen.
  5. Das Speicherkonto sendet eine Antwort an den Front Door PoP.
  6. Wenn der PoP die Antwort empfängt, speichert er sie in seinem Cache für nachfolgende Anforderungen.
  7. Der PoP gibt die Antwort an den Client zurück.
  8. Alle Anforderungen direkt an das Speicherkonto über das Internet werden von der Azure Storage-Firewall blockiert.

Komponenten

  • Azure Storage speichert statischen Inhalt in Blobs.
  • Azure Front Door empfängt eingehende Verbindungen von Clients, überprüft sie mit der WAF, leitet die Anforderung sicher an das Speicherkonto weiter und speichert Antworten zwischen.

Alternativen

Wenn Sie über statische Dateien in einem anderen Cloudspeicheranbieter verfügen oder statischen Inhalt in der Infrastruktur hosten, die Sie besitzen und verwalten, gilt ein Großteil dieses Szenarios weiterhin. Sie müssen jedoch überlegen, wie Sie den eingehenden Datenverkehr auf Ihren Ursprungsserver schützen, um zu überprüfen, ob es durch die Front door kommt. Wenn Ihr Speicheranbieter Private Link nicht unterstützt, sollten Sie einen alternativen Ansatz verwenden und etwa das Front Door-Diensttag auf die Positivliste setzen und den Header X-Azure-FDID überprüfen.

Szenariodetails

Die Bereitstellung statischer Inhalte ist in vielen Situationen nützlich, wie z. B. in den folgenden Beispielen:

  • Bereitstellen von Images, CSS-Dateien und JavaScript-Dateien für eine Webanwendung
  • Bereitstellen von Dateien und Dokumenten, z. B. PDF-Dateien oder JSON-Dateien
  • Bereitstellen von Nichtstreamingvideos.

Statische Inhalte ändern sich naturgemäß nicht häufig. Statische Dateien können außerdem groß sein. Aufgrund dieser Merkmale eignen sie sich gut für die Zwischenspeicherung. Dadurch verbessert sich die Leistung, und die Kosten für die Bereitstellung von Anforderungen werden reduziert.

In einem komplexen Szenario kann ein einzelnes Front Door-Profil statische Inhalte und dynamische Inhalte bereitstellen. Sie können separate Ursprungsgruppen für jeden Ursprungstyp verwenden und die Routingfunktionen von Front Door nutzen, um eingehende Anforderungen an den richtigen Ursprung weiterzuleiten.

Überlegungen

Skalierbarkeit und Leistung

Als Content Delivery Network (CDN) speichert Front Door die Inhalte in seinem global verteilten Netzwerk von PoPs zwischen. Wenn eine zwischengespeicherte Kopie einer Antwort an einem PoP verfügbar ist, kann Front Door schnell mit der zwischengespeicherten Antwort reagieren. Das Zurückgeben von Inhalten aus dem Cache verbessert die Leistung der Lösung und verringert die Auslastung des Ursprungs. Wenn der PoP keine gültige zwischengespeicherte Antwort aufweist, reduzieren die Funktionen von Front Door zur Datenverkehrsbeschleunigung die Zeit für die Bereitstellung des Inhalts aus dem Ursprung.

Sicherheit

Authentifizierung

Front Door ist für das Internet konzipiert, und dieses Szenario ist für öffentlich verfügbare Blobs optimiert. Wenn Sie den Zugriff auf Blobs authentifizieren müssen, erwägen Sie die Verwendung von freigegebenen Zugriffssignaturen und aktivieren Sie unbedingt das Abfragezeichenfolgenverhalten Abfragezeichenfolgen verwenden, um zu verhindern, dass Front Door Anforderungen an nicht authentifizierte Clients sendet. Dieser Ansatz nutzt jedoch möglicherweise den Front Door-Cache nicht effektiv, da jede Anforderung mit einer anderen Shared Access Signature separat an den Ursprung gesendet werden muss.

Ursprungssicherheit

Front Door stellt mithilfe von Private Link eine sichere Verbindung mit dem Azure Storage-Konto her. Das Speicherkonto ist so konfiguriert, dass es den direkten Zugriff aus dem Internet verweigert und nur Anforderungen über die von Front Door verwendete private Endpunktverbindung zulässt. Diese Konfiguration stellt sicher, dass jede Anforderung von Front Door verarbeitet wird und verhindert, dass der Inhalt Ihres Speicherkontos direkt im Internet verfügbar ist. Diese Konfiguration erfordert jedoch die Premium-Stufe von Azure Front Door. Wenn Sie die Standardebene verwenden, muss Ihr Speicherkonto öffentlich zugänglich sein. Sie können eine Shared Access Signature verwenden, um Anforderungen an das Speicherkonto zu schützen, und festlegen, dass der Client die Signatur für alle Anforderungen enthält oder dass die Front Door-Regel-Engine verwendet wird, um sie über Front Door anzufügen.

Benutzerdefinierte Domänennamen

Front Door unterstützt benutzerdefinierte Domänennamen und kann TLS-Zertifikate für diese Domänen ausstellen und verwalten. Mithilfe benutzerdefinierter Domänen können Sie sicherstellen, dass Ihre Clients Dateien von einem vertrauenswürdigen und vertrauten Domänennamen erhalten und dass TLS jede Verbindung mit Front Door verschlüsselt. Wenn Front Door Ihre TLS-Zertifikate verwaltet, vermeiden Sie Ausfälle und Sicherheitsprobleme aufgrund ungültiger oder veralteter TLS-Zertifikate.

Azure Storage unterstützt bei Verwendung einer benutzerdefinierten Domäne auch benutzerdefinierte Domänennamen, aber nicht HTTPS. Front Door ist der beste Ansatz, um einen benutzerdefinierten Domänennamen mit einem Speicherkonto zu verwenden.

Web Application Firewall

Die verwalteten Regelsätze von Front Door WAF überprüfen Anforderungen auf häufige und neue Sicherheitsbedrohungen. Es wird empfohlen, WAF und verwaltete Regeln sowohl für statische als auch für dynamische Anwendungen zu verwenden.

Sie können auch die Front Door WAF verwenden, um Ratenbegrenzungen und Geofilterung durchzuführen, wenn Sie diese Funktionen benötigen.

Resilienz

Front Door ist ein hochverfügbarer Dienst, der aufgrund seiner global verteilten Architektur resilient gegenüber Ausfällen einzelner Azure-Regionen und PoPs ist.

Mithilfe des Front Door-Caches reduzieren Sie die Auslastung Ihres Speicherkontos. Wenn Ihr Speicherkonto nicht verfügbar sind, kann Front Door zudem möglicherweise weiterhin zwischengespeicherte Antworten bereitstellen, bis Ihre Anwendung wiederhergestellt wird.

Sie können die Resilienz der gesamten Lösung weiter verbessern, indem Sie die Resilienz des Speicherkontos berücksichtigen. Weitere Informationen finden Sie unter Azure Storage-Redundanz. Alternativ können Sie mehrere Speicherkonten bereitstellen und mehrere Ursprünge in Ihrer Front Door-Ursprungsgruppe sowie ein Failover zwischen den Ursprüngen konfigurieren, indem Sie die Priorität der einzelnen Ursprünge konfigurieren. Weitere Informationen finden Sie unter Ursprünge und Ursprungsgruppen in Azure Front Door.

Kostenoptimierung

Zwischenspeicherung kann dazu beitragen, die Kosten für die Bereitstellung statischer Inhalte zu senken. Die PoPs von Front Door speichern Kopien von Antworten und können diese zwischengespeicherten Antworten für nachfolgende Anforderungen bereitstellen. Zwischenspeicherung reduziert die Anforderungslast für den Ursprung. Bei statischen inhaltsbasierten Lösungen mit umfassender Skalierung, insbesondere bei Lösungen, die große Dateien bereitstellen, kann das Zwischenspeichern die Datenverkehrskosten erheblich reduzieren.

Um Private Link in dieser Lösung zu verwenden, müssen Sie den Premium-Tarif von Front Door bereitstellen. Sie können den Standard-Tarif verwenden, wenn Sie den Datenverkehr, der direkt an Ihr Speicherkonto geleitet wird, nicht blockieren müssen. Weitere Informationen finden Sie unter Ursprungssicherheit.

Bereitstellen dieses Szenarios

Informationen zum Bereitstellen dieses Szenarios mithilfe von Bicep oder JSON-ARM-Vorlagen finden Sie in dieser Schnellstartanleitung.

Informationen zum Bereitstellen dieses Szenarios mithilfe von Terraform finden Sie in dieser Schnellstartanleitung.

Nächste Schritte

Informationen zum Erstellen eines Front Door-Profils