Du kan styra åtkomsten till dina SAN-volymer (Azure Elastic Storage Area Network). Genom att kontrollera åtkomsten kan du skydda dina data och uppfylla behoven i dina program och företagsmiljöer.
Den här artikeln beskriver hur du konfigurerar ditt elastiska SAN för att tillåta åtkomst från din virtuella Azure-nätverksinfrastruktur.
Så här konfigurerar du nätverksåtkomst till ditt elastiska SAN:
När du har installerat den senaste versionen kör du az extension add -n elastic-san för att installera tillägget för Elastic SAN.
Det krävs inga extra registreringssteg.
Begränsningar
Följande lista innehåller de regioner som Elastic SAN för närvarande är tillgängligt i, och vilka regioner som stöder både zonredundant lagring (ZRS) och lokalt redundant lagring (LRS) eller endast LRS:
Sydafrika, norra – LRS
Asien, östra – LRS
Sydostasien - LRS
Södra Brasilien - LRS
Kanada, centrala – LRS
Frankrike, centrala – LRS och ZRS
Tyskland, västra centrala – LRS
Australien, östra – LRS
Europa, norra – LRS och ZRS
Europa, västra - LRS och ZRS
Storbritannien, södra - LRS
Japan, östra – LRS
Korea Central – LRS
USA, centrala – LRS
USA, östra – LRS
USA, södra centrala – LRS
USA, östra 2 – LRS
USA, västra 2 – LRS och ZRS
USA, västra 3 – LRS
Sverige, centrala – LRS
Schweiz, norra – LRS
Norge, östra – LRS
Förenade Arabemiraten, norra – LRS
Indien, centrala – LRS
Konfigurera åtkomst till offentligt nätverk
Du aktiverar offentlig Internetåtkomst till dina elastiska SAN-slutpunkter på SAN-nivå. Genom att aktivera åtkomst till offentliga nätverk för ett elastiskt SAN kan du konfigurera offentlig åtkomst till enskilda volymgrupper via lagringstjänstslutpunkter. Som standard nekas offentlig åtkomst till enskilda volymgrupper även om du tillåter det på SAN-nivå. Du måste uttryckligen konfigurera dina volymgrupper för att tillåta åtkomst från specifika IP-adressintervall och virtuella nätverksundernät.
Du kan aktivera åtkomst till offentligt nätverk när du skapar ett elastiskt SAN eller aktiverar det för ett befintligt SAN med hjälp av Azure PowerShell-modulen eller Azure CLI.
Använd Azure PowerShell-modulen eller Azure CLI för att aktivera åtkomst till offentliga nätverk.
Använd den här exempelkoden för att skapa ett elastiskt SAN med offentlig nätverksåtkomst aktiverad med hjälp av PowerShell. Ersätt variabelvärdena innan du kör exemplet.
# Set the variable values.
# The name of the resource group where the Elastic San is deployed.
$RgName = "<ResourceGroupName>"
# The name of the Elastic SAN.
$EsanName = "<ElasticSanName>"
# The region where the new Elastic San will be created.
$Location = "<Location>"
# The SKU of the new Elastic SAN - `Premium_LRS` or `Premium_ZRS`.
$SkuName = "<SkuName>"
# The base size of the new Elastic SAN.
$BaseSize = "<BaseSize>"
# The extended size of the new Elastic SAN.
$ExtendedSize = "<ExtendedSize>"
# Setup the parameters to create an Elastic San with public network access enabled.
$NewEsanArguments = @{
Name = $EsanName
ResourceGroupName = $RgName
BaseSizeTiB = $BaseSize
ExtendedCapacitySizeTiB = $ExtendedSize
Location = $Location
SkuName = $SkuName
PublicNetworkAccess = "Enabled"
}
# Create the Elastic San.
New-AzElasticSan @NewEsanArguments
Använd den här exempelkoden för att uppdatera ett elastiskt SAN för att aktivera åtkomst till offentliga nätverk med hjälp av PowerShell. Ersätt värdena RgName för och EsanName med dina egna och kör sedan exemplet:
# Set the variable values.
$RgName = "<ResourceGroupName>"
$EsanName = "<ElasticSanName>"
# Update the Elastic San.
Update-AzElasticSan -Name $EsanName -ResourceGroupName $RgName -PublicNetworkAccess Enabled
Använd den här exempelkoden för att skapa ett elastiskt SAN med offentlig nätverksåtkomst aktiverad med hjälp av Azure CLI. Ersätt variabelvärdena innan du kör exemplet.
# Set the variable values.
# The name of the resource group where the Elastic San is deployed.
$RgName="<ResourceGroupName>"
# The name of the Elastic SAN.
$EsanName="<ElasticSanName>"
# The region where the new Elastic San will be created.
$Location="<Location>"
# The SKU of the new Elastic SAN - `Premium_LRS` or `Premium_ZRS`.
$SkuName="<SkuName>"
# The base size of the new Elastic SAN.
$BaseSize="<BaseSize>"
# The extended size of the new Elastic SAN.
$ExtendedSize="<ExtendedSize>"
# Create the Elastic San.
az elastic-san create \
--elastic-san-name $EsanName \
--resource-group $RgName \
--location $Location \
--base-size-tib $BaseSize \
--extended-capacity-size-tib $ExtendedSize \
--sku $SkuName \
--public-network-access enabled
Använd den här exempelkoden för att uppdatera ett elastiskt SAN för att aktivera åtkomst till offentliga nätverk med hjälp av Azure CLI. Ersätt värdena RgName för och EsanName med dina egna värden:
# Set the variable values.
$RgName="<ResourceGroupName>"
$EsanName="<ElasticSanName>"
# Update the Elastic San.
az elastic-san update \
--elastic-san-name $EsanName \
--resource-group $RgName \
--public-network-access enabled
Konfigurera en slutpunkt för virtuellt nätverk
Du kan konfigurera dina elastiska SAN-volymgrupper så att de endast tillåter åtkomst från slutpunkter på specifika virtuella nätverksundernät. De tillåtna undernäten kan tillhöra virtuella nätverk i samma prenumeration, eller de i en annan prenumeration, inklusive en prenumeration som tillhör en annan Microsoft Entra-klientorganisation.
Du kan tillåta åtkomst till din elastiska SAN-volymgrupp från två typer av azure-slutpunkter för virtuella nätverk:
En privat slutpunkt använder en eller flera privata IP-adresser från ditt virtuella nätverksundernät för att få åtkomst till en elastisk SAN-volymgrupp via Microsofts stamnätverk. Med en privat slutpunkt skyddas trafiken mellan ditt virtuella nätverk och volymgruppen via en privat länk.
Tjänstslutpunkter för virtuella nätverk är offentliga och tillgängliga via Internet. Du kan konfigurera regler för virtuella nätverk för att styra åtkomsten till volymgruppen när du använder lagringstjänstslutpunkter.
Nätverksregler gäller endast för offentliga slutpunkter för en volymgrupp, inte privata slutpunkter. Processen med att godkänna skapandet av en privat slutpunkt ger implicit åtkomst till trafik från det undernät som är värd för den privata slutpunkten. Du kan använda nätverksprinciper för att styra trafik över privata slutpunkter om du vill förfina åtkomstregler. Om du vill använda privata slutpunkter exklusivt ska du inte aktivera tjänstslutpunkter för volymgruppen.
För elastiska SAN med lokalt redundant lagring (LRS) som redundansalternativ stöds privata slutpunkter i alla regioner där elastic SAN är tillgängligt. Privata slutpunkter stöds för närvarande inte för elastiska SAN med zonredundant lagring (ZRS) som redundansalternativ.
Det finns två steg som ingår i konfigurationen av en privat slutpunktsanslutning:
Skapa slutpunkten och den associerade anslutningen.
Godkänna anslutningen.
Du kan också använda nätverksprinciper för att förfina åtkomstkontroll över privata slutpunkter.
Om du vill skapa en privat slutpunkt för en elastisk SAN-volymgrupp måste du ha rollen Elastisk SAN-volymgruppägare . Om du vill godkänna en ny privat slutpunktsanslutning måste du ha behörighet till Azure-resursproviderns åtgärdMicrosoft.ElasticSan/elasticSans/PrivateEndpointConnectionsApproval/action. Behörighet för den här åtgärden ingår i rollen Elastic SAN Network Admin , men den kan också beviljas via en anpassad Azure-roll.
Om du skapar slutpunkten från ett användarkonto som har alla nödvändiga roller och behörigheter som krävs för att skapa och godkänna kan processen slutföras i ett steg. Annars krävs två separata steg av två olika användare.
Elastic SAN och det virtuella nätverket kan finnas i olika resursgrupper, regioner och prenumerationer, inklusive prenumerationer som tillhör olika Microsoft Entra-klienter. I de här exemplen skapar vi den privata slutpunkten i samma resursgrupp som det virtuella nätverket.
Du kan skapa en privat slutpunktsanslutning till din volymgrupp i Azure-portalen, antingen när du skapar en volymgrupp eller när du ändrar en befintlig volymgrupp. Du behöver ett befintligt virtuellt nätverk för att skapa en privat slutpunkt.
När du skapar eller ändrar en volymgrupp väljer du Nätverk och sedan + Skapa en privat slutpunkt under Privata slutpunktsanslutningar.
Fyll i värdena i menyn som visas, välj det virtuella nätverket och det undernät som dina program ska använda för att ansluta. När du är klar väljer du Lägg till och Spara.
När du distribuerar en privat slutpunkt för en elastisk SAN-volymgrupp med PowerShell ingår följande steg:
Hämta undernätet från de program som ska ansluta.
Hämta den elastiska SAN-volymgruppen.
Skapa en privat länktjänstanslutning med volymgruppen som indata.
Skapa den privata slutpunkten med hjälp av undernätet och tjänsten private link som indata.
(Valfritt)Om du använder tvåstegsprocessen (skapande och godkännande)): Den elastiska SAN-nätverksadministratören godkänner anslutningen.
Använd den här exempelkoden för att skapa en privat slutpunkt för din elastiska SAN-volymgrupp med PowerShell. Ersätt värdena RgNameför , VnetName, SubnetName, EsanName, EsanVgName, , PLSvcConnectionNameoch EndpointNameLocation med dina egna värden:
# Set the resource group name.
$RgName = "<ResourceGroupName>"
# Set the virtual network and subnet, which is used when creating the private endpoint.
$VnetName = "<VnetName>"
$SubnetName = "<SubnetName>"
$Vnet = Get-AzVirtualNetwork -Name $VnetName -ResourceGroupName $RgName
$Subnet = $Vnet | Select -ExpandProperty subnets | Where-Object {$_.Name -eq $SubnetName}
# Set the Elastic SAN, which is used when creating the private endpoint service connection.
$EsanName = "<ElasticSanName>"
$EsanVgName = "<ElasticSanVolumeGroupName>"
$Esan = Get-AzElasticSan -Name $EsanName -ResourceGroupName $RgName
# Create the private link service connection, which is input to creating the private endpoint.
$PLSvcConnectionName = "<PrivateLinkSvcConnectionName>"
$EsanPlSvcConn = New-AzPrivateLinkServiceConnection -Name $PLSvcConnectionName -PrivateLinkServiceId $Esan.Id -GroupId $EsanVgName
# Create the private endpoint.
$EndpointName = '<PrivateEndpointName>'
$Location = '<Location>'
$PeArguments = @{
Name = $EndpointName
ResourceGroupName = $RgName
Location = $Location
Subnet = $Subnet
PrivateLinkServiceConnection = $EsanPlSvcConn
}
New-AzPrivateEndpoint @PeArguments # -ByManualRequest # (Uncomment the `-ByManualRequest` parameter if you are using the two-step process).
Använd den här exempelkoden för att godkänna privat länktjänstens anslutning om du använder tvåstegsprocessen. Använd samma variabler från föregående kodexempel:
# Get the private endpoint and associated connection.
$PrivateEndpoint = Get-AzPrivateEndpoint -Name $EndpointName -ResourceGroupName $RgName
$PeConnArguments = @{
ServiceName = $EsanName
ResourceGroupName = $RgName
PrivateLinkResourceType = "Microsoft.ElasticSan/elasticSans"
}
$EndpointConnection = Get-AzPrivateEndpointConnection @PeConnArguments |
Where-Object {($_.PrivateEndpoint.Id -eq $PrivateEndpoint.Id)}
# Approve the private link service connection.
$ApprovalDesc="<ApprovalDesc>"
Approve-AzPrivateEndpointConnection @PeConnArguments -Name $EndpointConnection.Name -Description $ApprovalDesc
# Get the private endpoint connection anew and verify the connection status.
$EndpointConnection = Get-AzPrivateEndpointConnection @PeConnArguments |
Where-Object {($_.PrivateEndpoint.Id -eq $PrivateEndpoint.Id)}
$EndpointConnection.PrivateLinkServiceConnectionState
Att distribuera en privat slutpunkt för en elastisk SAN-volymgrupp med hjälp av Azure CLI omfattar tre steg:
Hämta resurs-ID:t för den privata anslutningen för elastic SAN.
Skapa den privata slutpunkten med hjälp av indata:
Resurs-ID för privat anslutning
Namn på volymgrupp
Namn på resursgrupp
Namn på undernät
Virtuellt nätverksnamn
(ValfrittOm du använder tvåstegsprocessen (skapande och godkännande)): Den elastiska SAN-nätverksadministratören godkänner anslutningen.
Använd den här exempelkoden för att skapa en privat slutpunkt för din elastiska SAN-volymgrupp med Azure CLI. Ta bort kommentaren till parametern --manual-request om du använder tvåstegsprocessen. Ersätt alla exempelvariabelvärden med dina egna:
# Define some variables.
# The name of the resource group where the resources are deployed.
RgName="<ResourceGroupName>"
# The name of the subnet from which access to the volume group will be configured.
VnetName="<VnetName>"
# The name of the virtual network that includes the subnet.
SubnetName="<SubnetName>"
# The name of the Elastic SAN that the volume group belongs to.
EsanName="<ElasticSanName>"
# The name of the Elastic SAN Volume Group to which a connection is to be created.
EsanVgName="<ElasticSanVolumeGroupName>"
# The name of the new private endpoint
EndpointName="<PrivateEndpointName>"
# The name of the new private link service connection to the volume group.
PLSvcConnectionName="<PrivateLinkSvcConnectionName>"
# The region where the new private endpoint will be created.
Location="<Location>"
# The description provided for the approval of the private endpoint connection.
ApprovalDesc="<ApprovalDesc>"
# Get the id of the Elastic SAN.
id=$(az elastic-san show \
--elastic-san-name $EsanName \
--resource-group $RgName \
--query 'id' \
--output tsv)
# Create the private endpoint.
az network private-endpoint create \
--connection-name $PLSvcConnectionName \
--name $EndpointName \
--private-connection-resource-id $id \
--resource-group $RgName \
--vnet-name $VnetName \
--subnet $SubnetName \
--location $Location \
--group-id $EsanVgName # --manual-request
# Verify the status of the private endpoint connection.
PLConnectionName=$(az network private-endpoint-connection list \
--name $EsanName \
--resource-group $RgName \
--type Microsoft.ElasticSan/elasticSans \
--query "[?properties.groupIds[0]=='$EsanVgName'].name" -o tsv)
az network private-endpoint-connection show \
--resource-name $EsanName \
--resource-group $RgName \
--type Microsoft.ElasticSan/elasticSans \
--name $PLConnectionName
Använd den här exempelkoden för att godkänna privat länktjänstens anslutning om du använder tvåstegsprocessen. Använd samma variabler från föregående kodexempel:
Om du vill konfigurera en Azure Storage-tjänstslutpunkt från det virtuella nätverk där åtkomst krävs måste du ha behörighet till Azure-resursprovideråtgärden Microsoft.Network/virtualNetworks/subnets/joinViaServiceEndpoint/action via en anpassad Azure-roll för att konfigurera en tjänstslutpunkt.
Tjänstslutpunkter för virtuella nätverk är offentliga och tillgängliga via Internet. Du kan konfigurera regler för virtuella nätverk för att styra åtkomsten till volymgruppen när du använder lagringstjänstslutpunkter.
Kommentar
Konfiguration av regler som ger åtkomst till undernät i virtuella nätverk som ingår i en annan Microsoft Entra-klientorganisation stöds för närvarande endast via PowerShell-, CLI- och REST-API:er. Dessa regler kan inte konfigureras via Azure-portalen, även om de kan visas i portalen.
Gå till ditt virtuella nätverk och välj Tjänstslutpunkter.
Markera + Lägg till.
På skärmen Lägg till tjänstslutpunkter:
För Tjänst väljer du Microsoft.Storage.Global för att lägga till en tjänstslutpunkt mellan regioner.
Kommentar
Du kan se Microsoft.Storage som en tillgänglig slutpunkt för lagringstjänsten. Det alternativet gäller endast för slutpunkter inom regionen som endast finns för bakåtkompatibilitet. Använd alltid slutpunkter mellan regioner om du inte har en specifik orsak till att använda intraregionslutpunkter.
För Undernät väljer du alla undernät där du vill tillåta åtkomst.
Markera Lägga till.
Använd den här exempelkoden för att skapa en lagringstjänstslutpunkt för din elastiska SAN-volymgrupp med PowerShell.
# Define some variables
$RgName = "<ResourceGroupName>"
$VnetName = "<VnetName>"
$SubnetName = "<SubnetName>"
# Get the virtual network and subnet
$Vnet = Get-AzVirtualNetwork -ResourceGroupName $RgName -Name $VnetName
$Subnet = Get-AzVirtualNetworkSubnetConfig -VirtualNetwork $Vnet -Name $SubnetName
# Enable the storage service endpoint
$Vnet | Set-AzVirtualNetworkSubnetConfig -Name $SubnetName -AddressPrefix $Subnet.AddressPrefix -ServiceEndpoint "Microsoft.Storage.Global" | Set-AzVirtualNetwork
Använd den här exempelkoden för att skapa en slutpunkt för lagringstjänsten för din elastiska SAN-volymgrupp med Azure CLI.
# Define some variables
RgName="<ResourceGroupName>"
VnetName="<VnetName>"
SubnetName="<SubnetName>"
# Enable the storage service endpoint
az network vnet subnet update --resource-group $RgName --vnet-name $VnetName --name $SubnetName --service-endpoints "Microsoft.Storage.Global"
Konfigurera regler för virtuellt nätverk
Alla inkommande begäranden om data via en tjänstslutpunkt blockeras som standard. Endast program som begär data från tillåtna källor som du konfigurerar i dina nätverksregler kan komma åt dina data.
Du kan hantera regler för virtuella nätverk för volymgrupper via Azure-portalen, PowerShell eller CLI.
Viktigt!
Om du vill aktivera åtkomst till ditt lagringskonto från ett virtuellt nätverk/undernät i en annan Microsoft Entra-klientorganisation måste du använda PowerShell eller Azure CLI. Azure-portalen visar inte undernät i andra Microsoft Entra-klienter.
Om du tar bort ett undernät som har inkluderats i en nätverksregel tas det bort från nätverksreglerna för volymgruppen. Om du skapar ett nytt undernät med samma namn har det inte åtkomst till volymgruppen. Om du vill tillåta åtkomst måste du uttryckligen auktorisera det nya undernätet i nätverksreglerna för volymgruppen.
Om du vill lägga till en nätverksregel för ett undernät i ett virtuellt nätverk som tillhör en annan Microsoft Entra-klientorganisation använder du en fullständigt kvalificerad VirtualNetworkResourceId-parameter i formuläret "/subscriptions/subscription-ID/resourceGroups/resourceGroup-Name/providers/Microsoft.Network/virtualNetworks/vNet-name/subnets/subnet-name".
Ta bort en regel för virtuellt nätverk.
## You can remove a virtual network rule by object, by resource ID, or by removing all the rules in a volume group
### remove by networkRule object
Remove-AzElasticSanVolumeGroupNetworkRule -ResourceGroupName myRGName -ElasticSanName mySANName -VolumeGroupName myVolGroupName -NetworkAclsVirtualNetworkRule $virtualNetworkRule1,$virtualNetworkRule2
### remove by networkRuleResourceId
Remove-AzElasticSanVolumeGroupNetworkRule -ResourceGroupName myRGName -ElasticSanName mySANName -VolumeGroupName myVolGroupName -NetworkAclsVirtualNetworkResourceId "myResourceID"
### Remove all network rules in a volume group by pipeline
((Get-AzElasticSanVolumeGroup -ResourceGroupName myRGName -ElasticSanName mySANName -VolumeGroupName myVolGroupName).NetworkAclsVirtualNetworkRule) | Remove-AzElasticSanVolumeGroupNetworkRule -ResourceGroupName myRGName -ElasticSanName mySANName -VolumeGroupName myVolGroupName
Lägg till en nätverksregel för ett virtuellt nätverk och undernät.
Dricks
Om du vill lägga till en regel för ett undernät i ett virtuellt nätverk som tillhör en annan Microsoft Entra-klientorganisation använder du ett fullständigt kvalificerat undernäts-ID i formuläret /subscriptions/\<subscription-ID\>/resourceGroups/\<resourceGroup-Name\>/providers/Microsoft.Network/virtualNetworks/\<vNet-name\>/subnets/\<subnet-name\>.
Du kan använda prenumerationsparametern för att hämta undernäts-ID:t för ett virtuellt nätverk som tillhör en annan Microsoft Entra-klientorganisation.
# First, get the current length of the list of virtual networks. This is needed to ensure you append a new network instead of replacing existing ones.
virtualNetworkListLength = az elastic-san volume-group show -e $sanName -n $volumeGroupName -g $RgName --query 'length(networkAcls.virtualNetworkRules)'
az elastic-san volume-group update -e $sanName -g $RgName --name $volumeGroupName --network-acls virtual-network-rules[$virtualNetworkListLength] "{virtualNetworkRules:[{id:/subscriptions/subscriptionID/resourceGroups/RGName/providers/Microsoft.Network/virtualNetworks/$VnetName/subnets/default, action:Allow}]}"
Ta bort en nätverksregel. Följande kommando tar bort den första nätverksregeln och ändrar den för att ta bort den nätverksregel som du vill använda.
När du har aktiverat önskade slutpunkter och beviljat åtkomst i dina nätverksregler är du redo att konfigurera dina klienter att ansluta till lämpliga elastiska SAN-volymer.
Kommentar
Om en anslutning mellan en virtuell dator (VM) och en elastisk SAN-volym går förlorad försöker anslutningen igen i 90 sekunder tills den avslutas. Om du förlorar en anslutning till en elastisk SAN-volym startas inte den virtuella datorn om.