Aktivieren Sie den privaten Zugriff in Azure Cosmos DB für MongoDB vCore
GILT FÜR: MongoDB-vCore
Azure Private Link ist ein leistungsstarker Dienst, mit dem Benutzer über einen bestimmten privaten Endpunkt eine Verbindung mit Azure Cosmos DB für MongoDB vCore herstellen können. Dieser private Endpunkt besteht aus privaten IP-Adressen, die sich in einem Subnetz in Ihrem eigenen virtuellen Netzwerk befinden. Der Endpunkt ermöglicht es Ihnen, den Zugriff auf das Azure Cosmos DB für MongoDB vCore-Produkt ausschließlich über private IPs zu beschränken. Das Risiko der Datenexfiltration wird erheblich reduziert, indem Private Link mit strengen NSG-Richtlinien integriert wird. Um private Endpunkte besser zu verstehen, lesen Sie bitte Was ist Azure Private Link?.
Hinweis
Private Link sichert Ihre Verbindung, verhindert jedoch nicht, dass Ihre Azure Cosmos DB-Endpunkte durch ein öffentliches DNS aufgelöst werden. Die Filtration eingehender Anforderungen wird auf Anwendungsebene und nicht auf Transport- oder Netzwerkebene verarbeitet.
Private Link bietet die Flexibilität für den Zugriff auf die Azure Cosmos DB für MongoDB vCore entweder über Ihr virtuelles Netzwerk oder über ein verbundenes virtuelles Netzwerk. Darüber hinaus sind mit Private Link verknüpfte Ressourcen vor Ort über privates Peering, über VPN oder Azure ExpressRoute zugänglich.
Um eine Verbindung herzustellen, unterstützt Azure Cosmos DB für MongoDB vCore mit Private Link sowohl automatische als auch manuelle Genehmigungsmethoden. Weitere Informationen finden Sie in der Übersicht über private Endpunkte in Azure Cosmos DB.
Voraussetzungen
- Ein vorhandener Azure Cosmos DB for MongoDB-vCore-Cluster.
- Falls Sie nicht über ein Azure-Abonnement verfügen, können Sie ein kostenloses Konto erstellen.
- Wenn Sie über ein Azure-Abonnement verfügen, erstellen Sie einen neuen Azure Cosmos DB for MongoDB vCore Cluster.
Erstellen Sie einen Cluster mit einem privaten Endpunkt mithilfe des Azure-Portals
Folgen Sie diesen Schritten, um einen neuen Azure Cosmos DB for MongoDB vCore-Cluster mit einem privaten Endpunkt über das Azure-Portal zu erstellen:
Melden Sie sich im Azure-Portal an und wählen Sie dann in der oberen linken Ecke des Azure-Portals die Option Ressource erstellen aus.
Wählen Sie auf der Seite Ressource erstellen die Option Datenbankenund dann Azure Cosmos DB aus
Wählen Sie auf der Seite API-Option auswählen auf der Kachel MongoDB die Option „Erstellen“.
Wählen Sie den vCore-Clusterressourcentyp aus.
Wählen Sie auf der Clusterseite Azure Cosmos DB für MongoDB vCore erstellen eine Ressourcengruppe aus oder erstellen Sie eine, geben Sie einen Clusternamen und einen Standort ein und geben Sie das Administratorkennwort ein und bestätigen Sie es.
Klicken Sie auf Weiter: Netzwerk aus.
Wählen Sie die Registerkarte Netzwerk, wählen Sie unter Verbindungsmethode die Option Privater Zugang aus.
Geben Sie auf dem Bildschirm Privaten Endpunkt erstellen geeignete Werte für Folgendes ein bzw. wählen Sie die Werte aus:
Einstellung Wert Resource group Wählen Sie eine Ressourcengruppe aus. Name Geben Sie einen beliebigen Namen für Ihren privaten Endpunkt ein. Wenn dieser Name vergeben ist, erstellen Sie einen eindeutigen Namen. Name der Netzwerkschnittstelle Geben Sie einen beliebigen Namen für Ihre Netzwerkschnittstelle ein. Wenn dieser Name vergeben ist, erstellen Sie einen eindeutigen Namen. Standort Wählen Sie die Region aus, in der Sie Private Link bereitstellen möchten. Erstellen Sie den privaten Endpunkt am gleichen Standort, an dem sich auch das virtuelle Netzwerk befindet. Ressourcentyp Wählen Sie Microsoft.DocumentDB/mongoClusters
aus.Zielressource Wählen Sie die V-Kern-Ressource von Azure Cosmos DB for MongoDB aus, die Sie erstellt haben. Unterressource des Ziels Wählen Sie den Typ der untergeordneten Ressource für die zuvor ausgewählte Ressource aus, auf die Ihr privater Endpunkt zugreifen soll. Virtuelles Netzwerk Wählen Sie Ihr virtuelles Netzwerk aus. Subnet Wählen Sie das Subnetz aus. Integration in eine private DNS-Zone Wählen Sie Ja aus. Für die Herstellung einer privaten Verbindung mit Ihrem privaten Endpunkt benötigen Sie einen DNS-Eintrag. Es wird empfohlen, den privaten Endpunkt in eine private DNS-Zone zu integrieren. Sie können auch Ihre eigenen DNS-Server verwenden oder DNS-Einträge mithilfe der Hostdateien auf Ihren virtuellen Computern erstellen. Wenn Sie für diese Option Ja auswählen, wird ebenfalls eine private DNS-Zonengruppe erstellt. Die DNS-Zonengruppe ist eine Verknüpfung zwischen der privaten DNS-Zone und dem privaten Endpunkt. Mit diesem Link können Sie die private DNS-Zone automatisch aktualisieren, wenn ein Update für den privaten Endpunkt vorliegt. Wenn Sie z. B. Regionen hinzufügen oder entfernen, wird die private DNS-Zone automatisch aktualisiert. Konfigurationsname Wählen Sie Ihr Abonnement und die Ressourcengruppe aus. Die private DNS-Zone wird automatisch bestimmt. Sie können sie nicht über das Azure-Portal ändern. Klicken Sie auf OK.
Wählen Sie Weiter: Tags>Überprüfen + erstellen aus. Wählen Sie dann auf der Seite Überprüfen + Erstellen die Option Erstellen aus.
Aktivieren des privaten Zugriffs auf einen vorhandenen Cluster
Um einen privaten Endpunkt für einen Knoten in einem vorhandenen Cluster zu erstellen, öffnen Sie die Seite Netzwerk für den Cluster.
Wählen Sie Privaten Endpunkt hinzufügen.
Überprüfen Sie auf der Registerkarte Grundlagen des Bildschirms Privaten Endpunkt erstellen die Werte für Abonnement, Ressourcengruppe und Region. Geben Sie einen Namen für den Endpunkt ein, z. B. my-cluster-1. Geben Sie einen Namen der Netzwerkschnittstelle, z. B. my-cluster-1-nic.
Hinweis
Sofern kein guter Grund für eine anderweitige Entscheidung vorliegt, wird empfohlen, ein Abonnement und eine Region auszuwählen, das/die mit dem Abonnement und der Region Ihres Clusters übereinstimmt. Die Standardwerte für die Formularfelder sind möglicherweise nicht korrekt. Überprüfen Sie die Werte, und aktualisieren Sie sie bei Bedarf.
Klicken Sie auf Weiter: Ressource aus. Wählen Sie „Microsoft.DocumentDB/mongoClusters“ für Ressourcentyp aus, und wählen Sie den Zielcluster für Ressource aus. Wählen Sie für Zielunterressource „MongoCluster“ aus.
Wählen Sie Weiter: Virtuelles Netzwerk aus. Wählen Sie das gewünschte virtuelle Netzwerk und ein Subnetz aus. Wählen Sie unter Konfiguration der privaten IP-Adresse die Option IP-Adresse statisch zuordnen aus, oder behalten Sie den Standardwert bei: IP-Adresse dynamisch zuordnen.
Wählen Sie Weiter: DNS aus.
Behalten Sie unter Private DNS-Integration für die Option Integration in eine private DNS-Zone den Standardwert Ja bei, oder wählen Sie Nein aus.
Wählen Sie Weiter: Tags aus, und fügen Sie alle gewünschten Tags hinzu.
Klicken Sie auf Überprüfen + erstellen. Überprüfen Sie die Einstellungen, und wählen Sie Erstellen aus, wenn Sie zufrieden sind.
Erstellen eines privaten Endpunkts mit der Azure CLI
Führen Sie das folgende Azure CLI-Skript aus, um einen privaten Endpunkt namens myPrivateEndpoint für ein vorhandenes Azure Cosmos DB-Konto zu erstellen. Ersetzen Sie die Variablenwerte durch die entsprechenden Angaben für Ihre Umgebung.
# Resource group where the Azure Cosmos DB account and virtual network resources are located
ResourceGroupName="myResourceGroup"
# Name of the existing Azure Cosmos DB account
MongovCoreClusterName="myMongoCluster"
# Subscription ID where the Azure Cosmos DB account and virtual network resources are located
SubscriptionId="<your Azure subscription ID>"
# API type of your Azure Cosmos DB account: Sql, SqlDedicated, MongoCluster, Cassandra, Gremlin, or Table
CosmosDbSubResourceType="MongoCluster"
# Name of the virtual network to create
VNetName="myVnet"
# Name of the subnet to create
SubnetName="mySubnet"
# Name of the private endpoint to create
PrivateEndpointName="myPrivateEndpoint"
# Name of the private endpoint connection to create
PrivateConnectionName="myConnection"
az network vnet create \
--name $VNetName \
--resource-group $ResourceGroupName \
--subnet-name $SubnetName
az network vnet subnet update \
--name <name> \
--resource-group $ResourceGroupName \
--vnet-name $VNetName \
--disable-private-endpoint-network-policies true
az network private-endpoint create \
--name $PrivateEndpointName \
--resource-group $ResourceGroupName \
--vnet-name $VNetName \
--subnet $SubnetName \
--private-connection-resource-id "/subscriptions/$SubscriptionId/resourceGroups/$ResourceGroupName/providers/Microsoft.DocumentDB/mongoClusters/$MongovCoreClusterName" \
--group-ids MongoCluster --connection-name $PrivateConnectionName
Integrieren des privaten Endpunkts in eine private DNS-Zone
Nachdem Sie den privaten Endpunkt erstellt haben, können Sie ihn mithilfe des folgenden Azure CLI-Skripts in eine private DNS-Zone integrieren:
#Zone name differs based on the API type and group ID you are using.
zoneName="privatelink.mongocluster.cosmos.azure.com"
az network private-dns zone create \
--resource-group $ResourceGroupName \
--name $zoneName
az network private-dns link vnet create --resource-group $ResourceGroupName \
--zone-name $zoneName \
--name <dns-link-name> \
--virtual-network $VNetName \
--registration-enabled false
#Create a DNS zone group
az network private-endpoint dns-zone-group create \
--resource-group $ResourceGroupName \
--endpoint-name <pe-name> \
--name <zone-group-name> \
--private-dns-zone $zoneName \
--zone-name mongocluster
MongoClusters-Befehle in Private Link
az network private-link-resource list \
-g <rg-name> \
-n <resource-name> \
--type Microsoft.DocumentDB/mongoClusters