Service-eindpunten voor Virtueelnetwerk gebruiken met Azure Service BusUse Virtual Network service endpoints with Azure Service Bus

De integratie van Service Bus met [service-eindpunten voor Virtueelnetwerk (VNet)] vnet-sep kunt veilige toegang tot berichten mogelijkheden van workloads, zoals virtuele machines die zijn gekoppeld aan virtuele netwerken , met het netwerkpad verkeer aan beide uiteinden worden beveiligd.The integration of Service Bus with Virtual Network (VNet) service endpoints enables secure access to messaging capabilities from workloads like virtual machines that are bound to virtual networks, with the network traffic path being secured on both ends.

Eenmaal is geconfigureerd om te worden gekoppeld aan ten minste één virtueel netwerk subnet service-eindpunt, wordt de betreffende Service Bus-naamruimte niet meer verkeer vanaf elke locatie accepteert maar geautoriseerd virtuele netwerken.Once configured to be bound to at least one virtual network subnet service endpoint, the respective Service Bus namespace will no longer accept traffic from anywhere but authorized virtual network(s). Vanuit het perspectief van het virtuele netwerk, een Service Bus-naamruimte binden aan een service-eindpunt configureert u een geïsoleerde netwerken tunnel vanuit het subnet van het virtuele netwerk naar de messaging-service.From the virtual network perspective, binding a Service Bus namespace to a service endpoint configures an isolated networking tunnel from the virtual network subnet to the messaging service.

Het resultaat is een privé- en geïsoleerd relatie tussen de werkbelastingen die zijn gebonden aan het subnet en de bijbehorende Service Bus-naamruimte, ondanks het waarneembare netwerkadres van de berichten service eindpunt wordt in een openbare IP-adresbereik.The result is a private and isolated relationship between the workloads bound to the subnet and the respective Service Bus namespace, in spite of the observable network address of the messaging service endpoint being in a public IP range.

Waarschuwing

Het implementeren van de integratie van virtuele netwerken kan voorkomen dat andere Azure-services interactie hebben met Service Bus.Implementing Virtual Networks integration can prevent other Azure services from interacting with Service Bus.

Vertrouwde Microsoft-services worden niet ondersteund wanneer virtuele netwerken worden geïmplementeerd.Trusted Microsoft services are not supported when Virtual Networks are implemented.

Algemene Azure-scenario's die niet met virtuele netwerken werken (Let op: de lijst is niet volledig)-Common Azure scenarios that don't work with Virtual Networks (note that the list is NOT exhaustive) -

  • Azure MonitorAzure Monitor
  • Azure Stream AnalyticsAzure Stream Analytics
  • Integratie met Azure Event GridIntegration with Azure Event Grid
  • Azure IoT Hub RoutesAzure IoT Hub Routes
  • Azure IoT Device ExplorerAzure IoT Device Explorer
  • Azure Data ExplorerAzure Data Explorer

De onderstaande Microsoft services vereist zijn om te worden in een virtueel netwerkThe below Microsoft services are required to be on a virtual network

  • Azure App ServiceAzure App Service
  • Azure FunctionsAzure Functions

Belangrijk

Virtuele netwerken worden alleen ondersteund in Premium-laag Service Bus-naamruimten.Virtual Networks are supported only in Premium tier Service Bus namespaces.

Met Service Bus-service-eindpunten inschakelenEnable service endpoints with Service Bus

Een belangrijk aandachtspunt bij het gebruik van VNet-service-eindpunten met Service Bus is dat u deze eindpunten in toepassingen die elkaar Standard en Premium-laag Service Bus-naamruimten niet moet inschakelen.An important consideration when using VNet service endpoints with Service Bus is that you should not enable these endpoints in applications that mix Standard and Premium tier Service Bus namespaces. Omdat de Standard-laag biedt geen ondersteuning voor vnet's, is het eindpunt is beperkt tot alleen Premium-laag-naamruimten.Because Standard tier does not support VNets, the endpoint is restricted to Premium tier namespaces only.

Geavanceerde beveiliging mogelijke scenario's met VNet-integratieAdvanced security scenarios enabled by VNet integration

Oplossingen die voorziet in een hechte en compartmentalized beveiliging vereisen, en waarbij virtuele subnetten hardwareoplossing tussen de compartmentalized services, moeten doorgaans nog steeds communicatiepaden tussen services die zich bevinden in deze secties.Solutions that require tight and compartmentalized security, and where virtual network subnets provide the segmentation between the compartmentalized services, generally still need communication paths between services residing in those compartments.

Een direct IP-route tussen de afdelingen, inclusief de uitvoering van HTTPS via TCP/IP, voert u het risico van misbruik van zwakke plekken van de netwerklaag op omhoog.Any immediate IP route between the compartments, including those carrying HTTPS over TCP/IP, carries the risk of exploitation of vulnerabilities from the network layer on up. Messaging-services bieden een volledig geïsoleerd communicatiepaden, waar berichten ook naar de schijf als ze worden overgedragen tussen de partijen worden geschreven.Messaging services provide completely insulated communication paths, where messages are even written to disk as they transition between parties. Workloads in twee verschillende virtuele netwerken die zijn beide gekoppeld aan hetzelfde exemplaar van de Service Bus kunnen communiceren efficiënt en betrouwbaar via berichten, terwijl de respectieve netwerk isolatie grens integriteit behouden blijft.Workloads in two distinct virtual networks that are both bound to the same Service Bus instance can communicate efficiently and reliably via messages, while the respective network isolation boundary integrity is preserved.

Dit betekent dat de beveiliging van uw gevoelige cloudoplossingen niet alleen toegang krijgen tot toonaangevende betrouwbare en schaalbare asynchrone messaging mogelijkheden van Azure, maar ze kunnen nu gebruiken messaging communicatiepaden tussen veilige oplossing maken die reizigerscompartimenten zijn inherent veiliger is dan wat met een peer-to-peer communicatiemodus is, met inbegrip van HTTPS en andere TLS beveiligde socket-protocollen.That means your security sensitive cloud solutions not only gain access to Azure industry-leading reliable and scalable asynchronous messaging capabilities, but they can now use messaging to create communication paths between secure solution compartments that are inherently more secure than what is achievable with any peer-to-peer communication mode, including HTTPS and other TLS-secured socket protocols.

Servicebus binding met een virtueel netwerkBinding Service Bus to Virtual Networks

Regels voor virtueel netwerk zijn van de firewall beveiligingsfunctie die bepaalt of de server van uw Azure Service Bus-verbindingen van een bepaald virtueel netwerksubnet accepteert.Virtual network rules are the firewall security feature that controls whether your Azure Service Bus server accepts connections from a particular virtual network subnet.

Een Service Bus-naamruimte binden aan een virtueel netwerk is een proces in twee stappen.Binding a Service Bus namespace to a virtual network is a two-step process. U moet eerst maken een service-eindpunt voor Virtueelnetwerk op een Virtueelnetwerk, subnet en inschakelen voor "Microsoft.ServiceBus" als beschreven in de [overzicht van service-eindpunt] vnet-sep.You first need to create a Virtual Network service endpoint on a Virtual Network subnet and enable it for "Microsoft.ServiceBus" as explained in the service endpoint overview. Nadat u het service-eindpunt hebt toegevoegd, verbindt u de Service Bus-naamruimte toe met een regel voor virtuele netwerken.Once you have added the service endpoint, you bind the Service Bus namespace to it with a virtual network rule.

De regel voor virtuele netwerken is een koppeling van de Service Bus-naamruimte met een subnet van een virtueel netwerk.The virtual network rule is an association of the Service Bus namespace with a virtual network subnet. Terwijl de regel bestaat, worden alle werkbelastingen die zijn gekoppeld aan het subnet toegang tot de Service Bus-naamruimte toegekend.While the rule exists, all workloads bound to the subnet are granted access to the Service Bus namespace. Servicebus zelf nooit uitgaande verbindingen maakt, heeft niet nodig om toegang te krijgen, en is daarom nooit toegang verleend tot uw subnet door in te schakelen met deze regel.Service Bus itself never establishes outbound connections, does not need to gain access, and is therefore never granted access to your subnet by enabling this rule.

Het maken van een regel voor virtuele netwerken met Azure Resource Manager-sjablonenCreating a virtual network rule with Azure Resource Manager templates

De volgende Resource Manager-sjabloon kunt een regel voor virtuele netwerken toe te voegen aan een bestaande Service Bus-naamruimte.The following Resource Manager template enables adding a virtual network rule to an existing Service Bus namespace.

Sjabloonparameters:Template parameters:

  • namespaceName: Service Bus-naamruimte.namespaceName: Service Bus namespace.
  • virtualNetworkingSubnetId: Volledig gekwalificeerde pad van de Resource Manager voor het subnet van het virtuele netwerk; bijvoorbeeld, /subscriptions/{id}/resourceGroups/{rg}/providers/Microsoft.Network/virtualNetworks/{vnet}/subnets/default voor de standaard-subnet van een virtueel netwerk.virtualNetworkingSubnetId: Fully qualified Resource Manager path for the virtual network subnet; for example, /subscriptions/{id}/resourceGroups/{rg}/providers/Microsoft.Network/virtualNetworks/{vnet}/subnets/default for the default subnet of a virtual network.

Notitie

Er zijn geen regels voor weigeren mogelijk, de Azure Resource Manager-sjabloon is de standaardactie die is ingesteld op 'Toestaan' die verbindingen niet beperken.While there are no deny rules possible, the Azure Resource Manager template has the default action set to "Allow" which doesn't restrict connections. Bij het maken van regels voor Virtueelnetwerk of Firewalls, moeten we wijzigen de "defaultAction"When making Virtual Network or Firewalls rules, we must change the "defaultAction"

fromfrom

"defaultAction": "Allow"

totto

"defaultAction": "Deny"

Sjabloon:Template:

{
    "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "parameters": {
      "servicebusNamespaceName": {
        "type": "string",
        "metadata": {
          "description": "Name of the Service Bus namespace"
        }
      },
      "virtualNetworkName": {
        "type": "string",
        "metadata": {
          "description": "Name of the Virtual Network Rule"
        }
      },
      "subnetName": {
        "type": "string",
        "metadata": {
          "description": "Name of the Virtual Network Sub Net"
        }
      },
      "location": {
        "type": "string",
        "metadata": {
          "description": "Location for Namespace"
        }
      }
    },
    "variables": {
      "namespaceNetworkRuleSetName": "[concat(parameters('servicebusNamespaceName'), concat('/', 'default'))]",
      "subNetId": "[resourceId('Microsoft.Network/virtualNetworks/subnets/', parameters('virtualNetworkName'), parameters('subnetName'))]"
    },
    "resources": [
      {
        "apiVersion": "2018-01-01-preview",
        "name": "[parameters('servicebusNamespaceName')]",
        "type": "Microsoft.ServiceBus/namespaces",
        "location": "[parameters('location')]",
        "sku": {
          "name": "Premium",
          "tier": "Premium"
        },
        "properties": { }
      },
      {
        "apiVersion": "2017-09-01",
        "name": "[parameters('virtualNetworkName')]",
        "location": "[parameters('location')]",
        "type": "Microsoft.Network/virtualNetworks",
        "properties": {
          "addressSpace": {
            "addressPrefixes": [
              "10.0.0.0/23"
            ]
          },
          "subnets": [
            {
              "name": "[parameters('subnetName')]",
              "properties": {
                "addressPrefix": "10.0.0.0/23",
                "serviceEndpoints": [
                  {
                    "service": "Microsoft.ServiceBus"
                  }
                ]
              }
            }
          ]
        }
      },
      {
        "apiVersion": "2018-01-01-preview",
        "name": "[variables('namespaceNetworkRuleSetName')]",
        "type": "Microsoft.ServiceBus/namespaces/networkruleset",
        "dependsOn": [
          "[concat('Microsoft.ServiceBus/namespaces/', parameters('servicebusNamespaceName'))]"
        ],
        "properties": {
          "virtualNetworkRules": 
          [
            {
              "subnet": {
                "id": "[variables('subNetId')]"
              },
              "ignoreMissingVnetServiceEndpoint": false
            }
          ],
          "ipRules":[<YOUR EXISTING IP RULES>],
          "defaultAction": "Deny"
        }
      }
    ],
    "outputs": { }
  }

Volg de instructies voor het implementeren van de sjabloon, Azure Resource Manager.To deploy the template, follow the instructions for Azure Resource Manager.

Volgende stappenNext steps

Zie voor meer informatie over virtuele netwerken, de volgende koppelingen:For more information about virtual networks, see the following links: