Aktivera privat åtkomst i Azure Cosmos DB för MongoDB vCore
GÄLLER FÖR: MongoDB vCore
Azure Private Link är en kraftfull tjänst som gör det möjligt för användare att ansluta till Azure Cosmos DB för MongoDB vCore via en utsedd privat slutpunkt. Den här privata slutpunkten består av privata IP-adresser som finns i ett undernät i ditt eget virtuella nätverk. Med slutpunkten kan du begränsa åtkomsten till produkten Azure Cosmos DB for MongoDB vCore enbart via privata IP-adresser. Risken för dataexfiltrering minskar avsevärt genom integrering av Private Link med strikta NSG-principer. Om du vill ha en djupare förståelse för privata slutpunkter kan du titta närmare på Vad är Azure Private Link?.
Kommentar
Private Link skyddar anslutningen, men det förhindrar inte att dina Azure Cosmos DB-slutpunkter löses av offentlig DNS. Filtreringen av inkommande begäranden hanteras på programnivå, inte på transport- eller nätverksnivå.
Private Link ger flexibiliteten att komma åt azure Cosmos DB for MongoDB vCore antingen från ditt virtuella nätverk eller från ett anslutet peer-kopplat virtuellt nätverk. Dessutom är resurser som är länkade till Private Link tillgängliga lokalt via privat peering, via VPN eller Azure ExpressRoute.
För att upprätta en anslutning stöder Azure Cosmos DB for MongoDB vCore med Private Link både automatiska och manuella godkännandemetoder. Mer information finns i privata slutpunkter i Azure Cosmos DB.
Förutsättningar
- Ett befintligt Azure Cosmos DB för MongoDB vCore-kluster.
- Om du inte har en Azure-prenumeration skapar du ett konto kostnadsfritt.
- Om du har en befintlig Azure-prenumeration skapar du ett nytt Azure Cosmos DB för MongoDB vCore-kluster.
Skapa ett kluster med en privat slutpunkt med hjälp av Azure Portal
Följ dessa steg för att skapa ett nytt Azure Cosmos DB for MongoDB vCore-kluster med en privat slutpunkt med hjälp av Azure Portal:
Logga in på Azure Portal och välj sedan Skapa en resurs i det övre vänstra hörnet av Azure Portal.
På sidan Skapa en resurs väljer du Databaser och sedan Azure Cosmos DB.
På sidan Välj API-alternativ går du till MongoDB-panelen och väljer Skapa.
Välj resurstypen vCore-kluster.
På sidan Skapa ett Azure Cosmos DB for MongoDB vCore-kluster väljer eller skapar du en resursgrupp, anger ett klusternamn och en plats och anger och bekräftar administratörens lösenord.
Välj Nästa: Nätverk.
Välj fliken Nätverk . För Anslutningsmetod väljer du Privat åtkomst.
På skärmen Skapa privat slutpunkt anger eller väljer du lämpliga värden för:
Inställning Värde Resursgrupp Välj en resursgrupp. Name Ange valfritt namn för din privata slutpunkt. Om det här namnet tas skapar du ett unikt namn. Namn på nätverksgränssnitt Ange valfritt namn för nätverksgränssnittet. Om det här namnet tas skapar du ett unikt namn. Plats Välj den region där du vill distribuera Private Link. Skapa den privata slutpunkten på samma plats där det virtuella nätverket finns. Resurstyp Välj Microsoft.DocumentDB/mongoClusters
.Målresurs Välj resursen Azure Cosmos DB for MongoDB vCore som du skapade. Underresurs för mål Välj den typ av underresurs för den resurs som du valde tidigare och som den privata slutpunkten ska ha åtkomst till. Virtuellt nätverk Välj ditt virtuella nätverk. Undernät Välj ditt undernät. Integrera med privat DNS-zon Välj Ja. Du måste ha en DNS-post för att ansluta privat med din privata slutpunkt. Vi rekommenderar att du integrerar din privata slutpunkt med en privat DNS-zon. Du kan också använda dina egna DNS-servrar eller skapa DNS-poster med hjälp av värdfilerna på dina virtuella datorer. När du väljer Ja för det här alternativet skapas även en privat DNS-zongrupp. DNS-zongrupp är en länk mellan den privata DNS-zonen och den privata slutpunkten. Den här länken hjälper dig att uppdatera den privata DNS-zonen automatiskt när det finns en uppdatering av den privata slutpunkten. När du till exempel lägger till eller tar bort regioner uppdateras den privata DNS-zonen automatiskt. Konfigurationsnamn Välj din prenumeration och resursgrupp. Den privata DNS-zonen bestäms automatiskt. Du kan inte ändra det med hjälp av Azure Portal. Välj OK.
Välj Nästa: Taggar>Granska + skapa. På sidan Granska + skapa väljer du Skapa.
Aktivera privat åtkomst i ett befintligt kluster
Om du vill skapa en privat slutpunkt till en nod i ett befintligt kluster öppnar du sidan Nätverk för klustret.
Välj Lägg till privat slutpunkt.
På fliken Grundinställningar på skärmen Skapa en privat slutpunkt bekräftar du prenumerationen, resursgruppen och regionen. Ange ett namn för slutpunkten, till exempel my-cluster-1, och ett nätverksgränssnittsnamn, till exempel my-cluster-1-nic.
Kommentar
Om du inte har en bra anledning att välja något annat rekommenderar vi att du väljer en prenumeration och region som matchar klustrets. Standardvärdena för formulärfälten kanske inte är korrekta. Kontrollera dem och uppdatera om det behövs.
Välj Nästa: Resurs. Välj "Microsoft.DocumentDB/mongoClusters" som Resurstyp och välj målklustret för Resurs. För Målunderresurs väljer du "MongoCluster".
Välj Nästa: Virtuellt nätverk. Välj önskat virtuellt nätverk och undernät. Under Privat IP-konfiguration väljer du Statiskt allokera IP-adress eller behåll standardinställningen Dynamiskt allokera IP-adress.
Välj Nästa: DNS.
Under Privat DNS integrering för Integrera med privat DNS-zon behåller du standardvärdet Ja eller väljer Nej.
Välj Nästa: Taggar och lägg till önskade taggar.
Välj Granska + skapa. Granska inställningarna och välj Skapa när du är nöjd.
Skapa en privat slutpunkt med hjälp av Azure CLI
Kör följande Azure CLI-skript för att skapa en privat slutpunkt med namnet myPrivateEndpoint för ett befintligt Azure Cosmos DB-konto. Ersätt variabelvärdena med information om din miljö.
# 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
Integrera den privata slutpunkten med en privat DNS-zon
När du har skapat den privata slutpunkten kan du integrera den med en privat DNS-zon med hjälp av följande Azure CLI-skript:
#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-kommandon på Private Link
az network private-link-resource list \
-g <rg-name> \
-n <resource-name> \
--type Microsoft.DocumentDB/mongoClusters