Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Este artigo ajuda você a usar a WAN Virtual do Azure para conectar uma rede virtual a um hub virtual em um locatário diferente. Essa arquitetura é útil se você tiver cargas de trabalho de cliente que devem estar conectadas para serem a mesma rede, mas estão em locatários diferentes. Por exemplo, conforme mostrado no diagrama a seguir, você pode conectar uma rede virtual que não seja da Contoso (o locatário remoto) a um hub virtual da Contoso (o locatário pai).
Neste artigo, você aprenderá a:
- Adicione outro locatário como Colaborador em sua assinatura do Azure.
- Conecte uma rede virtual entre locatários a um hub virtual.
As etapas para essa configuração usam uma combinação do portal do Azure e do PowerShell. No entanto, o recurso em si está disponível apenas no PowerShell e na CLI do Azure.
Observação
Só pode gerir ligações de rede virtual entre inquilinos através do PowerShell ou do Azure CLI instalado no seu computador local. Como o Portal do Azure não suporta operações entre inquilinos, não é possível gerir ligações de rede virtual entre inquilinos através do portal do Azure ou do CloudShell do portal do Azure (PowerShell e CLI).
Antes de começar
Pré-requisitos
Para usar as etapas neste artigo, você deve ter a seguinte configuração já configurada em seu ambiente:
- Uma WAN virtual e um hub virtual na sua subscrição principal
- Uma rede virtual configurada em uma assinatura em um locatário (remoto) diferente
Certifique-se de que o espaço de endereço de rede virtual no locatário remoto não se sobreponha a nenhum outro espaço de endereço em qualquer outra rede virtual já conectada ao hub virtual pai.
Trabalhando com o Azure PowerShell
Este artigo usa cmdlets do PowerShell. Para executar os cmdlets, você pode usar o Azure Cloud Shell. O Cloud Shell é um shell interativo gratuito que você pode usar para executar as etapas neste artigo. Tem ferramentas comuns do Azure pré-instaladas e configuradas para utilização com a sua conta.
Para abrir o Cloud Shell, basta selecionar Abrir Cloudshell no canto superior direito de um bloco de código. Você também pode abrir o Cloud Shell numa guia separada no navegador, acessando https://shell.azure.com/powershell. Selecione Copiar para copiar os blocos de código, cole-os no Cloud Shell e selecione a tecla Enter para executá-los.
Atribuir permissões
Na assinatura da rede virtual no locatário remoto, adicione a atribuição de função de Colaborador ao administrador (o usuário que administra o hub virtual). As permissões de colaborador permitirão que o administrador modifique e acesse as redes virtuais no locatário remoto.
Você pode usar o PowerShell ou o portal do Azure para atribuir essa função. Consulte os seguintes artigos para obter as etapas:
Execute o comando a seguir para adicionar a assinatura de locatário remoto e a assinatura de locatário pai à sessão atual do PowerShell. Se você estiver conectado ao pai, precisará executar o comando apenas para o locatário remoto.
Connect-AzAccount -SubscriptionId "[subscription ID]" -TenantId "[tenant ID]"Verifique se a atribuição de função foi bem-sucedida. Entre no Azure PowerShell usando as credenciais pai e execute o seguinte comando:
Get-AzSubscriptionSe as permissões tiverem sido propagadas com êxito para o pai e tiverem sido adicionadas à sessão, as assinaturas de propriedade do pai e do locatário remoto aparecerão na saída do comando.
Conectar uma rede virtual a um hub
Nas etapas a seguir, você usará comandos para alternar entre o contexto das duas assinaturas ao vincular a rede virtual ao hub virtual. Substitua os valores de exemplo para refletir seu próprio ambiente.
Certifique-se de que está no contexto da sua conta remota:
Select-AzSubscription -SubscriptionId "[remote ID]"Crie uma variável local para armazenar os metadados da rede virtual que você deseja conectar ao hub:
$remote = Get-AzVirtualNetwork -Name "[vnet name]" -ResourceGroupName "[resource group name]"Conecte-se à conta principal:
Connect-AzAccount -TenantID "[parent tenant ID]"Selecione a assinatura pai:
Select-AzSubscription -SubscriptionId "[parent ID]"Conecte a rede virtual ao hub:
New-AzVirtualHubVnetConnection -ResourceGroupName "[parent resource group name]" -VirtualHubName "[virtual hub name]" -Name "[name of connection]" -RemoteVirtualNetwork $remote
Você pode exibir a nova conexão no PowerShell ou no portal do Azure:
- No console do PowerShell, os metadados da conexão recém-formada aparecerão se a conexão tiver sido formada com êxito.
- No portal do Azure, vá para o hub virtual e selecione Conexões deRede Virtual de>. Em seguida, você pode visualizar o ponteiro para a conexão. Para ver o recurso real, você precisará das permissões adequadas.
Cenário: Adicionar rotas estáticas a uma conexão de hub de rede virtual
Nas etapas a seguir, você usará comandos para adicionar uma rota estática à tabela de rotas padrão do hub virtual e uma conexão de rede virtual para apontar para um endereço IP de próximo salto (ou seja, um dispositivo NVA). Substitua os valores de exemplo para refletir seu próprio ambiente.
Observação
- Antes de executar os comandos, verifique se você tem acesso e está autorizado à assinatura remota.
- O prefixo de destino pode ser um CIDR ou vários. Para um único CIDR, use este formato:
@("10.19.2.0/24"). Para vários CIDRs, use este formato:@("10.19.2.0/24", "10.40.0.0/16").
Certifique-se de que está no contexto da sua conta de encarregado de educação:
Select-AzSubscription -SubscriptionId "[parent ID]"Adicione uma rota na tabela de rotas padrão do hub virtual sem um endereço IP específico.
Obtenha os detalhes da conexão:
$hubVnetConnection = Get-AzVirtualHubVnetConnection -Name "[HubconnectionName]" -ParentResourceName "[Hub Name]" -ResourceGroupName "[resource group name]"Adicione uma rota estática à tabela de rotas do hub virtual com a Conexão de Rede Virtual do próximo salto. As rotas existentes na tabela de rotas são preservadas com o seguinte script de exemplo.
$routeTable = Get-AzVHubRouteTable -ResourceGroupName "[Resource group name]" -VirtualHubName "[Virtual hub name]" -Name "defaultRouteTable" $Route2 = New-AzVHubRoute -Name "[Route Name]" -Destination “[@("Destination prefix")]” -DestinationType "CIDR" -NextHop $hubVnetConnection.Id -NextHopType "ResourceId" $routeTable.Routes.add($Route2)Verifique se a tabela de rotas tem as novas rotas:
$routeTable.RoutesAtualize a tabela de rotas padrão atual do hub:
Update-AzVHubRouteTable -ResourceGroupName "[resource group name]"-VirtualHubName [“Hub Name”] -Name "defaultRouteTable" -Route @($routeTable.Routes)Atualize a rota na conexão de rede virtual para especificar o próximo salto como um endereço IP. Este script de exemplo adiciona uma nova rota à conexão VNET (preservando quaisquer rotas existentes).
Observação
O nome da rota deve ser o mesmo que você usou quando adicionou uma rota estática anteriormente. Caso contrário, você criará duas rotas na tabela de roteamento: uma sem um endereço IP e outra com um endereço IP.
$newroute = New-AzStaticRoute -Name "[Route Name]" -AddressPrefix "[@("Destination prefix")]" -NextHopIpAddress "[Destination NVA IP address]" $hubVNetConnection.RoutingConfiguration.VnetRoutes.StaticRoutes.add($newroute) Update-AzVirtualHubVnetConnection -ResourceGroupName $rgname -VirtualHubName "[Hub Name]" -Name "[Virtual hub connection name]" -RoutingConfiguration $hubVNetConnection.RoutingConfigurationVerifique se a rota estática está estabelecida para um endereço IP de próximo salto.
Get-AzVirtualHubVnetConnection -ResourceGroupName "[Resource group]" -VirtualHubName "[virtual hub name]" -Name "[Virtual hub connection name]"
Solucionar problemas
- Verifique se os metadados em (da
$remote) correspondem às informações do portal do Azure. - Verifique as permissões usando as configurações do IAM do grupo de recursos de locatário remoto ou usando comandos do Azure PowerShell (
Get-AzSubscription). - Certifique-se de que as aspas estão incluídas em torno dos nomes de grupos de recursos ou quaisquer outras variáveis específicas do ambiente (por exemplo,
"VirtualHub1"ou"VirtualNetwork1"). - Se utilizar o SDK de Rede do Azure ou uma solicitação de API Rest direta, é necessário que o token de autorização do Locatário "Hub" primário seja passado no cabeçalho "Autorização" e um token de autorização adicional para o segundo Locatário "VNet" seja passado no cabeçalho especial "x-ms-authorization-auxiliary".
- Consulte a documentação: Autenticar solicitações entre locatários
Próximos passos
- Para obter mais informações sobre a WAN Virtual, consulte as Perguntas frequentes.