Tillåt åtkomst till Azure Service Bus namnområde från specifika virtuella nätverk
Integreringen av Service Bus med tjänstslutpunkter för Virtual Network (VNet) ger säker åtkomst till meddelandefunktioner från arbetsbelastningar som virtuella datorer som är bundna till virtuella nätverk, där nätverkstrafiksökvägen skyddas i båda ändar.
När de har konfigurerats för att vara bundna till minst en tjänstslutpunkt för virtuellt nätverk kommer respektive Service Bus namnområde inte längre att acceptera trafik var som helst än auktoriserade virtuella nätverk och, om du vill, specifika IP-adresser för Internet. Från det virtuella nätverkets perspektiv konfigurerar bindning av ett Service Bus namnområde till en tjänstslutpunkt en isolerad nätverkstunnel från det virtuella nätverksundernätet till meddelandetjänsten.
Resultatet är en privat och isolerad relation mellan arbetsbelastningarna som är bundna till undernätet och respektive Service Bus namnområde, trots att den observerbara nätverksadressen för slutpunkten för meddelandetjänsten är i ett offentligt IP-intervall.
Viktiga saker
Virtuella nätverk stöds endast i Premium nivå Service Bus namnområden. När du använder VNet-tjänstslutpunkter med Service Bus bör du inte aktivera dessa slutpunkter i program som blandar standard- och premiumnivå Service Bus namnområden. Eftersom standardnivån inte stöder virtuella nätverk. Slutpunkten är begränsad till endast Premium-nivånamnområden.
Genom att implementera integrering av virtuella nätverk kan du förhindra andra Azure-tjänster från att interagera med Service Bus. Som ett undantag kan du tillåta åtkomst till Service Bus resurser från vissa betrodda tjänster även när nätverkstjänstslutpunkter är aktiverade. En lista över betrodda tjänster finns i Betrodda tjänster.
Följande Microsoft-tjänster måste finnas i ett virtuellt nätverk
- Azure App Service
- Azure Functions
Ange minst en IP-regel eller en regel för virtuellt nätverk för namnområdet så att endast trafik tillåts från de angivna IP-adresserna eller undernätet för ett virtuellt nätverk. Om det inte finns några IP- och virtuella nätverksregler kan namnområdet nås via det offentliga Internet (med hjälp av åtkomstnyckeln).
Avancerade säkerhetsscenarier som aktiveras av VNet-integrering
Lösningar som kräver nära och uppdelad säkerhet, och där virtuella nätverksundernät tillhandahåller segmenteringen mellan de uppdelade tjänsterna, behöver vanligtvis fortfarande kommunikationsvägar mellan tjänster som finns i dessa avdelningar.
Varje omedelbar IP-väg mellan avdelningarna, inklusive de som transporterar HTTPS över TCP/IP, medför risk för utnyttjande av sårbarheter från nätverksskiktet uppåt. Meddelandetjänster tillhandahåller isolerade kommunikationsvägar, där meddelanden till och med skrivs till disk när de övergår mellan parter. Arbetsbelastningar i två distinkta virtuella nätverk som båda är bundna till samma Service Bus instans kan kommunicera effektivt och tillförlitligt via meddelanden, medan respektive nätverksisoleringsgränsintegritet bevaras.
Det innebär att dina säkerhetskänsliga molnlösningar inte bara får åtkomst till azures branschledande tillförlitliga och skalbara asynkrona meddelandefunktioner, utan de kan nu använda meddelanden för att skapa kommunikationsvägar mellan säkra lösningsfack som i sig är säkrare än vad som kan uppnås med alla peer-to-peer-kommunikationslägen, inklusive HTTPS och andra TLS-säkra socketprotokoll.
Bind Service Bus till virtuella nätverk
Regler för virtuella nätverk är brandväggssäkerhetsfunktionen som styr om din Azure Service Bus-server accepterar anslutningar från ett visst virtuellt nätverksundernät.
Att binda ett Service Bus namnområde till ett virtuellt nätverk är en tvåstegsprocess. Du måste först skapa en Virtual Network tjänstslutpunkt i ett Virtual Network undernät och aktivera den för Microsoft.ServiceBus enligt beskrivningen i översikten över tjänstslutpunkten. När du har lagt till tjänstslutpunkten binder du Service Bus namnområde till den med en regel för virtuellt nätverk.
Regeln för virtuellt nätverk är en association mellan Service Bus namnområdet och ett virtuellt nätverksundernät. När regeln finns beviljas alla arbetsbelastningar som är bundna till undernätet åtkomst till Service Bus namnområde. Service Bus upprättar aldrig utgående anslutningar, behöver inte få åtkomst och beviljas därför aldrig åtkomst till ditt undernät genom att aktivera den här regeln.
Anteckning
Kom ihåg att en nätverkstjänstslutpunkt ger program som körs i det virtuella nätverket åtkomsten till Service Bus namnområde. Det virtuella nätverket styr slutpunktens nåbarhet, men inte vilka åtgärder som kan utföras på Service Bus entiteter (köer, ämnen eller prenumerationer). Använd Azure Active Directory (Azure AD) för att auktorisera åtgärder som programmen kan utföra på namnområdet och dess entiteter. Mer information finns i Autentisera och auktorisera ett program med Azure AD för åtkomst Service Bus entiteter.
Använda Azure-portalen
Det här avsnittet visar hur du använder Azure Portal för att lägga till en tjänstslutpunkt för virtuellt nätverk. För att begränsa åtkomsten måste du integrera tjänstslutpunkten för det virtuella nätverket för event hubs-namnområdet.
Gå till ditt Service Bus namnområde i Azure Portal.
På den vänstra menyn väljer du Alternativet Nätverk under Inställningar.
Anteckning
Du ser endast fliken Nätverk för premiumnamnområden .
På sidan Nätverk för åtkomst till offentligt nätverk kan du ange något av följande tre alternativ. Välj alternativet Valda nätverk för att tillåta åtkomst från endast angivna IP-adresser.
Inaktiverad. Det här alternativet inaktiverar all offentlig åtkomst till namnområdet. Namnområdet är endast tillgängligt via privata slutpunkter.
Valda nätverk. Det här alternativet ger offentlig åtkomst till namnområdet med hjälp av en åtkomstnyckel från valda nätverk.
Viktigt
Om du väljer Valda nätverk lägger du till minst en IP-brandväggsregel eller ett virtuellt nätverk som har åtkomst till namnområdet. Välj Inaktiverad om du bara vill begränsa all trafik till det här namnområdet över privata slutpunkter .
Alla nätverk (standard). Det här alternativet ger offentlig åtkomst från alla nätverk med hjälp av en åtkomstnyckel. Om du väljer alternativet Alla nätverk accepterar Service Bus anslutningar från valfri IP-adress (med hjälp av åtkomstnyckeln). Den här inställningen motsvarar en regel som accepterar IP-adressintervallet 0.0.0.0/0.
Om du vill begränsa åtkomsten till specifika virtuella nätverk väljer du alternativet Valda nätverk om det inte redan är markerat.
I avsnittet Virtual Network på sidan väljer du +Lägg till befintligt virtuellt nätverk. Välj + Skapa nytt virtuellt nätverk om du vill skapa ett nytt virtuellt nätverk.
Varning
Om du väljer alternativet Valda nätverk och inte lägger till minst en IP-brandväggsregel eller ett virtuellt nätverk på den här sidan kan namnområdet nås via offentligt Internet (med hjälp av åtkomstnyckeln).
Välj det virtuella nätverket i listan över virtuella nätverk och välj sedan undernätet. Du måste aktivera tjänstslutpunkten innan du lägger till det virtuella nätverket i listan. Om tjänstslutpunkten inte är aktiverad uppmanar portalen dig att aktivera den.
Du bör se följande meddelande när tjänstslutpunkten för undernätet har aktiverats för Microsoft.ServiceBus. Välj Lägg till längst ned på sidan för att lägga till nätverket.
Anteckning
Om du inte kan aktivera tjänstslutpunkten kan du ignorera den tjänstslutpunkt för virtuella nätverk som saknas med hjälp av mallen Resource Manager. Den här funktionen är inte tillgänglig i portalen.
Spara inställningarna genom att välja Spara i verktygsfältet. Vänta några minuter tills bekräftelsen visas i portalmeddelandena. Knappen Spara bör inaktiveras.
Anteckning
Anvisningar om hur du tillåter åtkomst från specifika IP-adresser eller intervall finns i Tillåt åtkomst från specifika IP-adresser eller intervall.
Betrodd Microsoft-tjänster
När du aktiverar inställningen Tillåt betrodda Microsoft-tjänster att kringgå den här brandväggsinställningen beviljas följande tjänster åtkomst till dina Service Bus resurser.
Betrodd tjänst | Användningsscenarier som stöds |
---|---|
Azure Event Grid | Tillåter Azure Event Grid att skicka händelser till köer eller ämnen i ditt Service Bus namnområde. Du måste också utföra följande steg:
Mer information finns i Händelseleverans med en hanterad identitet |
Azure API Management | Med API Management-tjänsten kan du skicka meddelanden till en Service Bus kö/ämne i Service Bus namnområde.
|
Azure IoT Central | Gör att IoT Central kan exportera data till Service Bus köer eller ämnen i Service Bus namnområde. Du måste också utföra följande steg:
|
Azure IoT Hub | Tillåter att en IoT-hubb skickar meddelanden till köer eller ämnen i Service Bus namnområde. Du måste också utföra följande steg: |
Använda Resource Manager-mallar
Följande exempel Resource Manager mall lägger till en regel för virtuellt nätverk i en befintlig Service Bus namnområde. För nätverksregeln anger den ID för ett undernät i ett virtuellt nätverk.
ID:t är en fullständigt kvalificerad Resource Manager sökväg för det virtuella nätverkets undernät. Till exempel /subscriptions/{id}/resourceGroups/{rg}/providers/Microsoft.Network/virtualNetworks/{vnet}/subnets/default
för standardundernätet för ett virtuellt nätverk.
Anteckning
Standardvärdet för defaultAction
är Allow
. När du lägger till regler för virtuellt nätverk eller brandväggar måste du ange defaultAction
till Deny
.
Mall:
{
"$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": {
"publicNetworkAccess": "Enabled",
"defaultAction": "Deny",
"virtualNetworkRules":
[
{
"subnet": {
"id": "[variables('subNetId')]"
},
"ignoreMissingVnetServiceEndpoint": false
}
],
"ipRules":[],
"trustedServiceAccessEnabled": false
}
}
],
"outputs": { }
}
Om du vill distribuera mallen följer du anvisningarna för Azure Resource Manager.
Viktigt
Om det inte finns några IP- och virtuella nätverksregler flödar all trafik till namnområdet även om du anger defaultAction
till deny
. Namnområdet kan nås via det offentliga Internet (med hjälp av åtkomstnyckeln). Ange minst en IP-regel eller en regel för virtuellt nätverk för namnområdet så att endast trafik tillåts från de angivna IP-adresserna eller undernätet för ett virtuellt nätverk.
standardåtgärd och åtkomst till offentligt nätverk
REST-API
Standardvärdet för defaultAction
egenskapen var Deny
för API-version 2021-01-01-preview och tidigare. Neka-regeln tillämpas dock inte om du inte anger IP-filter eller regler för virtuellt nätverk (VNet). Om du inte har några IP-filter eller VNet-regler behandlas det alltså som Allow
.
Från API version 2021-06-01-preview och senare är Allow
standardvärdet defaultAction
för egenskapen , för att korrekt återspegla tvingande på tjänstsidan. Om standardåtgärden är inställd på Deny
tillämpas IP-filter och VNet-regler. Om standardåtgärden är inställd på Allow
tillämpas inte IP-filter och VNet-regler. Tjänsten kommer ihåg reglerna när du inaktiverar dem och sedan startar igen.
API-versionen 2021-06-01-preview och senare introducerar också en ny egenskap med namnet publicNetworkAccess
. Om den är inställd på Disabled
begränsas åtgärderna endast till privata länkar. Om den är inställd på Enabled
tillåts åtgärder via det offentliga Internet.
Mer information om dessa egenskaper finns i Skapa eller uppdatera nätverksregeluppsättning och Skapa eller uppdatera privata slutpunktsanslutningar.
Anteckning
Ingen av ovanstående inställningar kringgår valideringen av anspråk via SAS- eller Azure AD-autentisering. Autentiseringskontrollen körs alltid när tjänsten har verifierat de nätverkskontroller som konfigurerats av defaultAction
, publicNetworkAccess
, privateEndpointConnections
inställningar.
Azure Portal
Azure Portal använder alltid den senaste API-versionen för att hämta och ange egenskaper. Om du tidigare hade konfigurerat ditt namnområde med 2021-01-01-preview och tidigare med defaultAction
inställt på Deny
, och angett noll IP-filter och VNet-regler, skulle portalen tidigare ha kontrollerat Valda nätverk på sidan Nätverk i namnområdet. Nu kontrollerar den alternativet Alla nätverk .
Nästa steg
Mer information om virtuella nätverk finns i följande länkar: