Criar e associar políticas de ponto de extremidade de serviço
Artigo
As políticas de ponto de extremidade de serviço permitem que você filtre o tráfego de rede virtual para recursos específicos do Azure em pontos de extremidade de serviço. Se você não estiver familiarizado com as políticas de ponto de extremidade de serviço, confira visão geral das políticas de ponto de extremidade de serviço para saber mais.
Neste tutorial, você aprenderá a:
Crie uma rede virtual.
Adicionar uma sub-rede e habilitar o ponto de extremidade de serviço para o Armazenamento do Azure.
Crie duas contas de Armazenamento do Azure e permita o acesso à rede a elas através da sub-rede na rede virtual.
Criar uma política de ponto de extremidade de serviço para permitir o acesso somente a uma das contas de armazenamento.
Implantar uma VM (máquina virtual) na sub-rede.
Confirmar o acesso à conta de armazenamento permitida na sub-rede.
Confirme se o acesso foi negado à conta de armazenamento não permitida na sub-rede.
O Azure hospeda o Azure Cloud Shell, um ambiente de shell interativo que pode ser usado por meio do navegador. É possível usar o bash ou o PowerShell com o Cloud Shell para trabalhar com os serviços do Azure. É possível usar os comandos pré-instalados do Cloud Shell para executar o código neste artigo, sem precisar instalar nada no seu ambiente local.
Para iniciar o Azure Cloud Shell:
Opção
Exemplo/Link
Selecione Experimentar no canto superior direito de um bloco de código ou de comando. Selecionar Experimentar não copia automaticamente o código nem o comando para o Cloud Shell.
Acesse https://shell.azure.com ou selecione o botão Iniciar o Cloud Shell para abri-lo no navegador.
Selecione o botão Cloud Shell na barra de menus no canto superior direito do portal do Azure.
Para usar o Azure Cloud Shell:
Inicie o Cloud Shell.
Selecione o botão Copiar em um bloco de código (ou bloco de comando) para copiar o código ou o comando.
Cole o código ou comando na sessão do Cloud Shell selecionando Ctrl+Shift+V no Windows e no Linux, ou selecionando Cmd+Shift+V no macOS.
Selecione Enter para executar o código ou o comando.
Se você optar por instalar e usar o PowerShell localmente, este artigo exigirá o módulo do Azure PowerShell versão 1.0.0 ou posterior. Execute Get-Module -ListAvailable Az para localizar a versão instalada. Se você precisa atualizar, consulte Instalar o módulo do Azure PowerShell. Se você estiver executando o PowerShell localmente, também precisará executar o Connect-AzAccount para criar uma conexão com o Azure.
Se preferir executar os comandos de referência da CLI localmente, instale a CLI do Azure. Para execuções no Windows ou no macOS, considere executar a CLI do Azure em um contêiner do Docker. Para obter mais informações, confira Como executar a CLI do Azure em um contêiner do Docker.
Se estiver usando uma instalação local, entre com a CLI do Azure usando o comando az login. Para concluir o processo de autenticação, siga as etapas exibidas no terminal. Para ver outras opções de entrada, confira Conectar-se com a CLI do Azure.
Quando solicitado, instale a extensão da CLI do Azure no primeiro uso. Para obter mais informações sobre extensões, confira Usar extensões com a CLI do Azure.
Execute az version para localizar a versão e as bibliotecas dependentes que estão instaladas. Para fazer a atualização para a versão mais recente, execute az upgrade.
Este artigo exige a versão 2.0.28 ou posterior da CLI do Azure. Se você está usando o Azure Cloud Shell, a versão mais recente já está instalada.
Criar uma rede virtual e habilitar o ponto de extremidade de serviço
Crie uma rede virtual para conter os recursos criados neste tutorial.
Na caixa de pesquisa no portal, insira Redes virtuais. Selecione Redes virtuais nos resultados da pesquisa.
Selecione + Criar para criar uma rede virtual.
Insira ou selecione as seguintes informações na guia Informações básicas em Criar rede virtual.
Configuração
Valor
Detalhes do projeto
Subscription
Selecione sua assinatura.
Resource group
Selecione Criar novo. Insira test-rg no Nome. Selecione .
Nome
Insira vnet-1.
Region
Selecione Oeste dos EUA 2.
Selecione Avançar.
Selecione Avançar.
Na guia Endereços IP, em Sub-redes, selecione a sub-rede padrão.
Insira ou selecione as seguintes informações em Editar sub-rede.
Configuração
Valor
Nome
Insira sub-rede-1.
Pontos de Extremidade de Serviço
Serviços
No menu suspenso, selecione Microsoft.Storage.
Selecione Salvar.
Selecione Examinar + criar.
Selecione Criar.
Antes de criar uma rede virtual, será necessário criar um grupo de recursos para a rede virtual e todos os outros recursos criados neste artigo. Crie um grupo de recursos com New-AzResourceGroup. O seguinte exemplo cria um grupo de recursos chamado test-rg:
Crie uma configuração de sub-rede com New-AzVirtualNetworkSubnetConfig e grave a configuração de sub-rede na rede virtual com Set-AzVirtualNetwork. O exemplo a seguir adiciona uma sub-rede chamada subnet-1 à rede virtual e cria o ponto de extremidade de serviço para Microsoft.Storage.
Antes de criar uma rede virtual, será necessário criar um grupo de recursos para a rede virtual e todos os outros recursos criados neste artigo. Crie um grupo de recursos com az group create. O exemplo a seguir cria um grupo de recursos chamado test-rg na localização westus2.
az group create \
--name test-rg \
--location westus2
Na caixa de pesquisa no portal, insira Grupos de segurança de rede. Selecione Grupos de segurança de rede nos resultados da pesquisa.
Selecione + Criar para criar um grupo de segurança de rede.
Na guia Informações básicas de Criar grupo de segurança de rede, insira ou selecione as seguintes informações.
Configuração
Valor
Detalhes do projeto
Subscription
Selecione sua assinatura.
Resource group
Selecione test-rg.
Nome
Insira nsg-1.
Region
Selecione Oeste dos EUA 2.
Selecione Examinar + criar.
Selecione Criar.
Criar regras do grupo de segurança de rede
Na caixa de pesquisa no portal, insira Grupos de segurança de rede. Selecione Grupos de segurança de rede nos resultados da pesquisa.
Selecione nsg-1.
Expanda Configurações. Selecione Regras de segurança de saída.
Selecione + Adicionar para adicionar uma nova regra de segurança de saída.
Em Adicionar regra de segurança de saída, insira ou selecione as informações a seguir.
Configuração
Valor
Fonte
selecione Marca de Serviço.
Marca de serviço de origem
Selecione VirtualNetwork.
Intervalos de portas de origem
Digite *.
Destino
selecione Marca de Serviço.
Marca de serviço de destino
Selecione Armazenamento.
Serviço
selecione Personalizado.
Intervalos de portas de destino
Digite *.
Protocolo
Selecione Qualquer.
Ação
selecione Permitir.
Prioridade
Insira 100.
Nome
Insira allow-storage-all.
Selecione Adicionar.
Selecione + Adicionar para adicionar outra regra de segurança de saída.
Em Adicionar regra de segurança de saída, insira ou selecione as informações a seguir.
Configuração
Valor
Fonte
selecione Marca de Serviço.
Marca de serviço de origem
Selecione VirtualNetwork.
Intervalos de portas de origem
Digite *.
Destino
selecione Marca de Serviço.
Marca de serviço de destino
selecione Internet.
Serviço
selecione Personalizado.
Intervalos de portas de destino
Digite *.
Protocolo
Selecione Qualquer.
Ação
Selecione Negar.
Prioridade
Insira 110.
Nome
Insira deny-internet-all.
Selecione Adicionar.
Expanda Configurações. Selecione sub-redes.
Selecione Associar.
Em Associar sub-rede, insira ou selecione as seguintes informações.
Configuração
Valor
Rede virtual
Selecione vnet-1 (test-rg).
Sub-rede
Selecione sub-rede-1.
Selecione OK.
Crie regras de segurança de grupo de segurança de rede com New-AzNetworkSecurityRuleConfig. A seguinte regra permite o acesso de saída para os endereços IP públicos atribuídos ao serviço de Armazenamento do Microsoft Azure:
A regra a seguir nega acesso a todos os endereços IP públicos. A regra anterior substitui essa regra, devido à sua prioridade mais alta, o que permite acesso aos endereços IP públicos do Armazenamento do Microsoft Azure.
Associe o grupo de segurança de rede para a sub-rede subnet-1 com Set-AzVirtualNetworkSubnetConfig e grave a configuração da sub-rede para a rede virtual. O exemplo a seguir associa o grupo de segurança de rede nsg-1 à sub-rede subnet-1:
Crie um grupo de segurança de rede com az network nsg create. O exemplo a seguir cria um grupo de segurança de rede chamado nsg-1.
az network nsg create \
--resource-group test-rg \
--name nsg-1
Associe o grupo de segurança de rede à sub-rede subnet-1 com az network vnet subnet update. O exemplo a seguir associa o grupo de segurança de rede nsg-1 à sub-rede subnet-1:
Crie regras de segurança com az network nsg rule create. A regra que segue permite o acesso de saída para os endereços IP públicos atribuídos ao serviço de Armazenamento do Microsoft Azure:
Cada grupo de segurança de rede contém várias regras de segurança padrão. A regra a seguir substitui uma regra de segurança padrão que permite o acesso de saída a todos os endereços IP públicos. A opção destination-address-prefix "Internet" nega o acesso de saída a todos os endereços IP públicos. A regra anterior substitui essa regra, devido à sua prioridade mais alta, o que permite acesso aos endereços IP públicos do Armazenamento do Microsoft Azure.
Restringir o acesso à rede nas contas do Armazenamento do Azure
As etapas necessárias para restringir o acesso de rede a recursos criados por meio de serviços do Azure habilitados para pontos de extremidade do serviço variam de acordo com os serviços. Confira a documentação de serviços individuais para obter as etapas específicas para cada serviço. O restante deste artigo inclui etapas para restringir o acesso de rede para uma conta de Armazenamento do Microsoft Azure, como exemplo.
Na caixa de pesquisa no portal, insira Contas de armazenamento. Selecione Contas de Armazenamento nos resultados da pesquisa.
Selecione + Criar para criar uma conta de armazenamento.
Em Criar uma conta de armazenamento, insira ou selecione as seguintes informações.
Configuração
Valor
Detalhes do projeto
Subscription
Selecione sua assinatura.
Resource group
Selecione test-rg.
Detalhes da instância
Nome da conta de armazenamento
Insira allowedaccount(número-aleatório). Observação: o nome da conta de armazenamento deve ser exclusivo. Adicione um número aleatório ao final do nome allowedaccount.
Region
Selecione Oeste dos EUA 2.
Desempenho
Selecione Padrão.
Redundância
Selecione LRS (armazenamento com redundância local).
Clique em Avançar até alcançar a guia Proteção de dados.
Em Recuperação, desmarque todas as opções.
Selecione Examinar + criar.
Selecione Criar.
Repita as etapas anteriores para criar outra conta de armazenamento com as seguintes informações.
Na caixa de pesquisa no portal, insira Contas de armazenamento. Selecione Contas de Armazenamento nos resultados da pesquisa.
Selecione allowedaccount(número-aleatório).
Expanda a seção Armazenamento de dados e selecione Compartilhamentos de arquivos.
Selecione +Compartilhamento de arquivos.
Em Novo compartilhamento de arquivo, insira ou selecione as informações a seguir.
Configuração
Valor
Nome
Insira compartilhamento de arquivo.
Deixe o restante das configurações como padrão e selecione Revisar + criar.
Selecione Criar.
Repita as etapas anteriores para criar um compartilhamento de arquivo em deniedaccount(número-aleatório).
Crie um compartilhamento de arquivo da conta de armazenamento permitida
Use Get-AzStorageAccountKey para obter a chave da conta de armazenamento permitida. Você usará essa chave na próxima etapa para criar um compartilhamento de arquivo na conta de armazenamento permitida.
Crie um compartilhamento de arquivo da conta de armazenamento negada
Use Get-AzStorageAccountKey para obter a chave da conta de armazenamento permitida. Você usará essa chave na próxima etapa para criar um compartilhamento de arquivo na conta de armazenamento negada.
Crie um compartilhamento de arquivo da conta de armazenamento permitida
Recupere a cadeia de conexão para as contas de armazenamento em uma variável com az storage account show-connection-string. A cadeia de conexão é usada para criar um compartilhamento de arquivos em uma etapa posterior.
Crie um compartilhamento de arquivos na conta de armazenamento com az storage share create. Em uma etapa posterior, esse compartilhamento de arquivos é montado para confirmar o acesso à rede para ele.
Crie um compartilhamento de arquivo da conta de armazenamento negada
Recupere a cadeia de conexão para as contas de armazenamento em uma variável com az storage account show-connection-string. A cadeia de conexão é usada para criar um compartilhamento de arquivos em uma etapa posterior.
Crie um compartilhamento de arquivos na conta de armazenamento com az storage share create. Em uma etapa posterior, esse compartilhamento de arquivos é montado para confirmar o acesso à rede para ele.
Negar todo acesso à rede para contas de armazenamento
Por padrão, as contas de armazenamento aceitam conexões de clientes em qualquer rede. Para restringir o acesso à rede para as contas de armazenamento, você pode configurar a conta de armazenamento para aceitar conexões somente de redes específicas. Neste exemplo, você configura a conta de armazenamento para aceitar conexões somente da sub-rede de rede virtual criada anteriormente.
Na caixa de pesquisa no portal, insira Contas de armazenamento. Selecione Contas de Armazenamento nos resultados da pesquisa.
Selecione allowedaccount(número-aleatório).
Expanda Segurança + rede e selecione Rede.
Em Firewalls e redes virtuais, em Acesso à rede pública, selecione Habilitado em redes virtuais e endereços IP selecionados.
Em Redes virtuais, selecione + Adicionar rede virtual existente.
Em Adicionar redes, insira ou selecione as informações a seguir.
Configuração
Valor
Subscription
Selecione sua assinatura.
Redes virtuais
Selecione vnet-1.
Sub-redes
Selecione sub-rede-1.
Selecione Adicionar.
Clique em Salvar.
Repita as etapas anteriores para negar o acesso à rede para deniedaccount(número-aleatório).
Use Update-AzStorageAccountNetworkRuleSet para negar o acesso às contas de armazenamento, exceto pela sub-rede e rede virtual que você criou anteriormente. Depois que o acesso à rede for negado, a conta de armazenamento não estará acessível em nenhuma rede.
Por padrão, as contas de armazenamento aceitam conexões de clientes em qualquer rede. Para limitar o acesso às redes selecionadas, altere a ação padrão para Negar com az storage account update. Depois que o acesso à rede for negado, a conta de armazenamento não estará acessível em nenhuma rede.
Aplicar a política para permitir o acesso a uma conta de armazenamento válida
Você pode criar uma política de ponto de extremidade de serviço. A política garante que os usuários na rede virtual só possam acessar contas seguras e permitidas do Armazenamento do Azure. Essa política contém uma lista de contas de armazenamento permitidas aplicada à sub-rede da rede virtual que está conectada ao armazenamento por meio de pontos de extremidade de serviço.
Criar uma política de ponto de extremidade de serviço
Esta seção cria a definição de política com a lista de recursos permitidos para acessar através do ponto de extremidade de serviço.
Na caixa de pesquisa no portal, insira Política de ponto de extremidade de serviço. Selecione Políticas de ponto de extremidade de serviço nos resultados da pesquisa.
Selecione + Criar para criar uma política de ponto de extremidade de serviço.
Insira ou selecione as seguintes informações na guia Informações básicas de Criar uma política de ponto de extremidade de serviço.
Configuração
Valor
Detalhes do projeto
Subscription
Selecione sua assinatura.
Resource group
Selecione test-rg.
Detalhes da instância
Nome
Insira service-endpoint-policy.
Localidade
Selecione Oeste dos EUA 2.
Selecione Avançar: definições de política.
Selecione + Adicionar um recurso em Recursos.
Em Adicionar um recurso, Insira ou selecione as informações a seguir:
Configuração
Valor
Serviço
Selecione Microsoft.Storage.
Escopo
Selecione Conta única
Assinatura
Selecione sua assinatura.
Resource group
Selecione test-rg.
Recurso
Selecione allowedaccount(número-aleatório)
Selecione Adicionar.
Selecione Examinar + criar.
Selecione Criar.
Para recuperar a ID do recurso para a primeira conta de armazenamento (permitida), use Get-AzStorageAccount.
As políticas de ponto de extremidade de serviço são aplicadas em pontos de extremidades de serviço. Comece criando uma política de ponto de extremidade de serviço. Em seguida, crie as definições de política nessa política para que as contas do Armazenamento do Azure sejam aprovadas para essa sub-rede
Use az storage account show para recuperar o ID do recurso da conta de armazenamento que é permitida.
serviceResourceId=$(az storage account show --name allowedaccount --query id --output tsv)
Criar uma política de ponto de extremidade de serviço
Associar uma política de ponto de extremidade de serviço a uma sub-rede
Depois de criar a política de ponto de extremidade de serviço, você a associará à sub-rede de destino com a configuração de ponto de extremidade de serviço para o Armazenamento do Azure.
Na caixa de pesquisa no portal, insira Política de ponto de extremidade de serviço. Selecione Políticas de ponto de extremidade de serviço nos resultados da pesquisa.
Selecione service-endpoint-policy.
Expanda Configurações e selecione Sub-redes associadas.
Selecione + Editar associação de sub-rede.
Em Editar associação de sub-rede, selecione vnet-1 e subnet-1.
Adicione todos os recursos acessados pela sub-rede à definição da política antes de associar a política à sub-rede. Depois da associação da política, será permitido apenas o acesso aos recursos permitir listado nos pontos de extremidade de serviço.
Não deve haver serviços do Azure gerenciados na sub-rede que será associada à política do ponto de extremidade de serviço.
O acesso aos recursos do Armazenamento do Azure em todas as regiões será restrito de acordo com a política de ponto de extremidade de serviço desta sub-rede.
Validar a restrição de acesso às contas de armazenamento do Azure
Para testar o acesso à rede em uma conta de armazenamento, implante uma VM na sub-rede.
Na caixa de pesquisa no portal, insira Máquinas Virtuais. Selecione Máquinas virtuais nos resultados da pesquisa.
Na guia Informações Básicas em Criar uma máquina virtual, insira ou selecione as seguintes informações:
Configuração
Valor
Detalhes do projeto
Subscription
Selecione sua assinatura.
Resource group
Selecione test-rg.
Detalhes da instância
Nome da máquina virtual
Insira vm-1.
Região
Selecione (EUA) Oeste dos EUA 2.
Opções de disponibilidade
Selecione Nenhuma redundância de infraestrutura necessária.
Tipo de segurança
Selecione Padrão.
Imagem
Selecione Windows Server 2022 Datacenter – x64 Gen2.
Tamanho
Selecione um tamanho.
Conta de administrador
Nome de Usuário
Digite um nome de usuário.
Senha
Digite uma senha.
Confirmar senha
Digite a senha novamente.
Regras de porta de entrada
Selecione Avançar: Discos e Avançar: Rede.
Na guia Rede, insira ou selecione as seguintes informações.
Configuração
Valor
Interface de rede
Rede virtual
Selecione vnet-1.
Sub-rede
Selecione sub-rede-1 (10.0.0.0/24).
IP público
Selecione Nenhum.
Grupo de segurança de rede da NIC
Selecione Nenhum.
Deixe o restante das configurações como padrão e selecione Revisar + Criar.
Selecione Criar.
Crie uma máquina virtual na sub-rede subnet-1 com New-AzVM. Ao executar o comando a seguir, as credenciais serão solicitadas. Os valores que você inseriu são configurados como o nome de usuário e senha para a VM.
Na caixa de pesquisa no portal, insira Contas de armazenamento. Selecione Contas de Armazenamento nos resultados da pesquisa.
Selecione allowedaccount(número-aleatório).
Expanda Segurança + rede e selecione Chaves de acesso.
Copie o valor de key1. Use essa chave para mapear uma unidade para a conta de armazenamento da máquina virtual criada anteriormente.
Na caixa de pesquisa no portal, insira Máquinas Virtuais. Selecione Máquinas virtuais nos resultados da pesquisa.
Selecione vm-1.
Expanda Operações. Selecione Executar comando.
Selecione RunPowerShellScript.
Cole o seguinte script em Executar script de comando.
## Enter the storage account key for the allowed storage account that you recorded earlier.
$storageAcctKey1 = (pasted from procedure above)
$acctKey = ConvertTo-SecureString -String $storageAcctKey1 -AsPlainText -Force
## Replace the login account with the name of the storage account you created.
$credential = New-Object System.Management.Automation.PSCredential -ArgumentList ("Azure\allowedaccount"), $acctKey
## Replace the storage account name with the name of the storage account you created.
New-PSDrive -Name Z -PSProvider FileSystem -Root "\\allowedaccount.file.core.windows.net\file-share" -Credential $credential
Selecione Executar.
Se o mapeamento da unidade for bem-sucedido, a saída na caixa Saída será semelhante ao exemplo a seguir:
Name Used (GB) Free (GB) Provider Root
---- --------- --------- -------- ----
Z FileSystem \\allowedaccount.file.core.windows.net\fil..
Confirme se o acesso é negado para a conta de armazenamento negada
Na caixa de pesquisa no portal, insira Contas de armazenamento. Selecione Contas de Armazenamento nos resultados da pesquisa.
Selecione deniedaccount(número-aleatório).
Expanda Segurança + rede e selecione Chaves de acesso.
Copie o valor de key1. Use essa chave para mapear uma unidade para a conta de armazenamento da máquina virtual criada anteriormente.
Na caixa de pesquisa no portal, insira Máquinas Virtuais. Selecione Máquinas virtuais nos resultados da pesquisa.
Selecione vm-1.
Expanda Operações. Selecione Executar comando.
Selecione RunPowerShellScript.
Cole o seguinte script em Executar script de comando.
## Enter the storage account key for the denied storage account that you recorded earlier.
$storageAcctKey2 = (pasted from procedure above)
$acctKey = ConvertTo-SecureString -String $storageAcctKey2 -AsPlainText -Force
## Replace the login account with the name of the storage account you created.
$credential = New-Object System.Management.Automation.PSCredential -ArgumentList ("Azure\deniedaccount"), $acctKey
## Replace the storage account name with the name of the storage account you created.
New-PSDrive -Name Z -PSProvider FileSystem -Root "\\deniedaccount.file.core.windows.net\file-share" -Credential $credential
Selecione Executar.
Você recebe a seguinte mensagem de erro na caixa Saída:
New-PSDrive : Access is denied
At line:1 char:1
+ New-PSDrive -Name Z -PSProvider FileSystem -Root "\\deniedaccount8675 ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (Z:PSDriveInfo) [New-PSDrive], Win32Exception
+ FullyQualifiedErrorId : CouldNotMapNetworkDrive,Microsoft.PowerShell.Commands.NewPSDriveCommand
O mapeamento da unidade é negado devido à política de ponto de extremidade de serviço que restringe o acesso à conta de armazenamento.
Quando terminar de usar os recursos que criou, você poderá excluir o grupo de recursos e todos os seus recursos.
No portal do Azure, procure por Grupos de recursos e selecione essa opção.
Na página Grupos de recursos, selecione o grupo de recursos test-rg.
Na página test-rg, selecione Excluir grupo de recursos .
Insira test-rg em Inserir o nome do grupo de recursos para confirmar a exclusão e, em seguida, selecione Excluir.
Quando não for mais necessário, você poderá usar Remove-AzResourceGroup para remover o grupo de recursos e todos os recursos que ele contém:
$params = @{
Name = "test-rg"
Force = $true
}
Remove-AzResourceGroup @params
Quando não for mais necessário, use az group delete para remover o grupo de recursos e todos os recursos que ele contém.
az group delete \
--name test-rg \
--yes \
--no-wait
Próximas etapas
Neste tutorial, você criou uma política de ponto de extremidade de serviço e a associou a uma sub-rede. Para saber mais sobre políticas de ponto de extremidade de serviço, confira visão geral de políticas de ponto de extremidade de serviço.