Hybrid Cloud-Anwendungen
Tailwind Traders verfügt über mehrere Anwendungen, die Front-End-Komponenten aufweisen, die aktuell lokal im Umkreisnetzwerk ausgeführt werden. Die Back-End-Elemente befinden sich in einem abgesicherten internen Netzwerk. Eines der Ziele von Tailwind Traders bei der Umstellung auf Hybrid Cloud besteht darin, das Umkreisnetzwerk außer Betrieb zu nehmen und alle öffentlich zugänglichen Workloads in der Cloud zu hosten. Aufgrund von Compliancebelangen und Bedenken der Workloadbesitzer sollen einige dieser Anwendungen physisch in Einrichtungen von Tailwind Traders verbleiben, statt in einem Azure-Rechenzentrum gehostet zu werden.
Auf einige andere Anwendungen von Tailwind Traders wird über VPN-Verbindungen in den internen geschützten Netzwerken in den Rechenzentren Sydney, Melbourne und Auckland zugegriffen. Für diese Anwendungen müssen sich die Benutzer grundsätzlich bei ihrer lokalen Active Directory-Instanz authentifizieren.
In dieser Lerneinheit erfahren Sie mehr über die Technologien, mit denen Tailwind Traders Anwendungen verwalten kann, mit denen Benutzer Verbindungen über Azure herstellen, obwohl die Daten oder die Anwendung selbst weiterhin in Einrichtungen von Tailwind Traders gehostet werden.
Was ist Azure Relay?
Azure Relay ist ein Dienst, mit dem Sie Workloads, die im internen Netzwerk Ihrer Organisation ausgeführt werden, auf sichere Weise für die öffentliche Cloud verfügbar machen können. Der Dienst ermöglicht dies, ohne dass Sie einen eingehenden Port in der Firewall eines Umkreisnetzwerks öffnen müssten.
Azure Relay unterstützt die folgenden Szenarien zwischen lokalen Diensten und Anwendungen, die in Azure ausgeführt werden:
- Herkömmliche unidirektionale Peer-zu-Peer-Kommunikation vom Typ „Anforderung/Antwort“
- Ereignisverteilung, um Veröffentlichungs-/Abonnementszenarios zu ermöglichen
- Bidirektionale und nicht gepufferte Socketkommunikation über Netzwerkgrenzen hinweg
Azure Relay stellt folgende Features bereit:
- Hybridverbindungen: Dieses Feature nutzt die Websockets mit offenem Standard und kann in plattformübergreifenden Architekturen verwendet werden. Es unterstützt die Programmiermodelle von .NET Core, .NET Framework, JavaScript/Node.js, auf Standards basierenden offenen Protokollen und Remoteprozeduraufrufen (RPC).
- WCF Relay: Dieses Feature verwendet WCF (Windows Communication Foundation), um Remoteprozeduraufrufe zu ermöglichen. Dies ist eine Option, die von vielen Kunden für ihre WCF-Programme eingesetzt wird. Sie bietet auch .NET Framework-Unterstützung.
Dank Azure Relay kann Tailwind Traders einige Anwendungen, die im internen Netzwerk ausgeführt werden, für Kunden im Internet veröffentlichen, ohne dazu eine VPN-Verbindung zu benötigen. Das Unternehmen sollte Azure Relay anstelle von Azure App Service-Hybridverbindungen verwenden, wenn keine Front-End-Web-App in Azure ausgeführt wird. Anstelle des Microsoft Entra-Anwendungsproxys sollte Azure Relay verwendet werden, wenn die Anwendung keine Microsoft Entra-Authentifizierung erfordert.
Was sind Azure App Service-Hybridverbindungen?
Das Feature für Hybridverbindungen in Azure App Service kann jede Anwendungsressource in jedem Netzwerk verwenden, die ausgehende Anforderungen an Azure über Port 443 senden kann. Beispielsweise können Sie Azure App Service-Hybridverbindungen nutzen, um einer in Azure ausgeführten Web-App die Verwendung einer lokal ausgeführten SQL Server-Datenbank-Instanz zu ermöglichen. Das Feature für Hybridverbindungen bietet Zugriff von einer in Azure ausgeführten App auf einen TCP-Endpunkt (Transmission Control Protocol).
Hybridverbindungen sind nicht auf Workloads beschränkt, die auf Windows Server-Plattformen ausgeführt werden. Sie können Hybridverbindungen so konfigurieren, dass sie auf eine beliebige Ressource zugreifen, die als TCP-Endpunkt fungiert, unabhängig davon, welches Anwendungsprotokoll genutzt wird. Beispielsweise können Sie eine Hybridverbindung zwischen einer Web-App konfigurieren, die in Azure ausgeführt wird, und einer MySQL-Datenbank, die auf einer lokalen Linux-VM läuft.
Hybridverbindungen verwenden einen Relay-Agent, den Sie an einem Standort bereitstellen, an dem der Agent Verbindungen zum TCP-Endpunkt im internen Netzwerk herstellen und eine Verbindung zu Azure einrichten kann. Diese Verbindung wird durch TLS 1.2 (Transport Layer Security) abgesichert. SAS-Schlüssel (Shared Access Signature) werden für die Authentifizierung und Autorisierung genutzt.
Auf der Abbildung unten ist eine Hybridverbindung zwischen einer in Azure ausgeführten Web-App und einem lokal ausgeführten Datenbankendpunkt dargestellt.
Hybridverbindungen weisen die folgenden Funktionen auf:
- Apps, die in Azure ausgeführt werden, können sicher auf lokale Systeme und Dienste zugreifen.
- Lokale Systeme oder lokale Dienste müssen für Hosts im Internet nicht direkt erreichbar sein.
- Es ist nicht erforderlich, einen Port in der Firewall zu öffnen, um eingehenden Zugriff aus Azure auf den Relay-Agent zuzulassen. Die gesamte Kommunikation wird vom Relay-Agent als ausgehende Kommunikation über Port 443 eingeleitet.
Für Hybridverbindungen gelten die folgenden Einschränkungen:
- Sie können nicht zur Einbindung einer SMB-Freigabe in ein lokales Netzwerk verwendet werden.
- Sie können das User Datagram-Protokoll (UDP) nicht verwenden.
- Sie können nicht auf TCP-basierte Dienste zugreifen, für die dynamische Ports genutzt werden.
- LDAP (Lightweight Directory Access Protocol) wird wegen seiner Abhängigkeit von UDP nicht unterstützt.
- Sie können nicht verwendet werden, um einen Domäneneinbindungsvorgang in Active Directory Domain Services durchzuführen.
Für Tailwind Traders ermöglichen Hybridverbindungen, mehrere Anwendungen außer Betrieb zu nehmen, deren Front-Ends aktuell im Umkreisnetzwerk von Tailwind Traders ausgeführt werden. Diese Apps können zu Azure migriert werden. Hybridverbindungen bieten dann eine abgesicherte Verbindung zu geschützten Netzwerken, die die Back-End-Komponenten der App hosten.
Was ist der Microsoft Entra-Anwendungsproxy?
Mit dem Microsoft Entra-Anwendungsproxy können Sie über eine externe URL sicheren Remotezugriff auf eine Webanwendung ermöglichen, die in einer lokalen Umgebung ausgeführt wird. Der Anwendungsproxy kann dafür konfiguriert werden, Remotezugriff und einmaliges Anmelden für SharePoint, Microsoft Teams, IIS-Webanwendungen und Remotedesktop zu ermöglichen. Der Anwendungsproxy kann als Ersatz für VPNs in interne Netzwerke oder Reverseproxys implementiert werden.
Der Anwendungsproxy funktioniert mit diesen Anwendungen:
- Webanwendungen, die die integrierte Windows-Authentifizierung verwenden
- Webanwendungen, die Header-basierte oder formularbasierte Authentifizierung verwenden
- Anwendungen, die über das Remotedesktopgateway gehostet sind
Der Anwendungsproxy funktioniert folgendermaßen:
- Die Benutzer*innen stellen über einen öffentlich zugänglichen Endpunkt eine Verbindung mit der Anwendung her und führen anschließend eine Microsoft Entra-Anmeldung durch.
- Nach dem Abschluss der Anmeldung wird ein Token an das Gerät des Benutzers weitergeleitet.
- Das Clientgerät leitet das Token an den Anwendungsproxydienst weiter, der den Benutzerprinzipalnamen (User Principal Name, UPN) und den Sicherheitsprinzipalnamen (Security Principal Name, SPN) des Token zurückgibt. Der Anwendungsproxy leitet die Anforderung dann an den Anwendungsproxyconnector weiter.
- Wenn das einmalige Anmelden aktiviert wurde, führt der Anwendungsproxyconnector weitere Authentifizierungsschritte durch.
- Der Anwendungsproxyconnector leitet die Anforderung an die lokale Anwendung weiter.
- Die Antwort wird über den Connector und den Anwendungsproxydienst an den Benutzer gesendet.
Die folgende Abbildung zeigt diesen Vorgang:
Benutzer von internen Netzwerken, die direkte Verbindungen mit Anwendungen zulassen, sollten die Verwendung des Anwendungsproxys vermeiden.
Bei Tailwind Traders kann der Microsoft Entra-Anwendungsproxy verwendet werden, um externen Benutzer*innen Zugriff auf interne Anwendungen zu geben, für die die Active Directory-Authentifizierung genutzt wird.