Compartilhar via


Criar e gerenciar regras de firewall do Banco de Dados do Azure para PostgreSQL – Servidor Flexível usando a CLI do Azure/

APLICA-SE A: Banco de Dados do Azure para PostgreSQL - Servidor Flexível

O servidor flexível do Banco de Dados do Azure para PostgreSQL dá suporte a dois tipos de métodos de conectividade de rede mutuamente exclusivos, para se conectar à sua instância do servidor flexível do Banco de Dados do Azure para PostgreSQL. As duas opções são:

  • Acesso público (endereços IP permitidos). Esse método pode ser protegido ainda mais ao usar serviços de rede baseados em Link Privado com servidor flexível do Banco de Dados do Azure para PostgreSQL em Versão Prévia.
  • Acesso privado (Integração VNet)

Este artigo se concentra na criação de uma instância de servidor flexível do Banco de Dados do Azure para PostgreSQL com Acesso público (endereços IP permitidos) usando a CLI do Azure e fornece uma visão geral dos comandos da CLI do Azure que você pode usar para criar, atualizar, excluir, listar e mostrar regras de firewall após a criação do servidor. Com Acesso público (endereços IP permitidos), as conexões à instância de servidor flexível do Banco de Dados do Azure para PostgreSQL são restritas somente a endereços IP permitidos. Os endereços IP do cliente precisam ser permitidos nas regras de firewall. Para saber mais sobre isso, consulte acesso público (endereços IP permitidos). As funções de firewall podem ser definidas no momento da criação do servidor (recomendado), mas também podem ser adicionadas posteriormente.

Iniciar o Azure Cloud Shell

O Azure Cloud Shell é um shell gratuito e interativo que poderá ser usado para executar as etapas deste artigo. Ele tem ferramentas do Azure instaladas e configuradas para usar com sua conta.

Para abrir o Cloud Shell, basta selecionar Experimentar no canto superior direito de um bloco de código. Você também pode abrir o Cloud Shell em uma guia separada do navegador indo até https://shell.azure.com/bash. Selecione Copiar para copiar os blocos de código, cole-o no Cloud Shell e selecione Enter para executá-lo.

Caso prefira instalar e usar a CLI localmente, este início rápido exigirá a CLI do Azure versão 2.0 ou posterior. Execute az --version para encontrar a versão. Se você precisa instalar ou atualizar, consulte Instalar a CLI do Azure.

Pré-requisitos

Você precisará entrar na sua conta usando o comando az login. Observe a propriedade ID que se refere à ID da Assinatura da sua conta do Azure.

az login

Selecione a assinatura específica em sua conta usando o comando az account set. Anote o valor da ID da saída az login para usar como valor para o argumento subscription no comando. Se tiver várias assinaturas, escolha a que for adequada para cobrança do recurso. Para obter todas as suas assinaturas, use az account list.

az account set --subscription <subscription id>

Criar regra de firewall durante a criação da instância de servidor flexível do Banco de Dados do Azure para PostgreSQL usando a CLI do Azure

Você pode usar o comando az postgres flexible-server --public access para criar a instância de servidor flexível do Banco de Dados do Azure para PostgreSQL com Acesso público (endereços IP permitidos) e configurar as regras de firewall durante a criação da instância do servidor flexível do Banco de Dados do Azure para PostgreSQL. Você pode usar a opção --Public-Access para fornecer os endereços IP permitidos que serão capazes de se conectar ao servidor. Você pode fornecer um simples ou intervalo de endereços IP a serem incluídos na lista de IPs permitidos. O intervalo de endereços IP deve ser separado por um traço e não conter espaços. Há várias opções para criar uma instância de servidor flexível do Banco de Dados do Azure para PostgreSQL usando a CLI do Azure, conforme mostrado nos exemplos a seguir.

Consulte a documentação de referência da CLI do Azure para obter a lista completa de parâmetros configuráveis da CLI. Por exemplo, nos comandos abaixo, é possível, como opção, especificar o grupo de recursos.

  • Criar uma instância do servidor flexível Banco de Dados do Azure para PostgreSQL com o acesso público e adicionar o endereço IP do cliente para ter acesso ao servidor:

    az postgres flexible-server create --public-access <my_client_ip>
    
  • Criar uma instância do servidor flexível do Banco de Dados do Azure para PostgreSQL com o acesso público e adicionar o intervalo de endereços IP para ter acesso a esse servidor:

    az postgres flexible-server create --public-access <start_ip_address-end_ip_address>
    
  • Criar uma instância de servidor flexível do Banco de Dados do Azure para PostgreSQL com acesso público e permitir que aplicativos de endereços IP do Azure se conectem à instância de servidor flexível do Banco de Dados do Azure para PostgreSQL:

    az postgres flexible-server create --public-access 0.0.0.0
    

    Importante

    Esta opção configura o firewall para permitir todas as conexões do Azure incluindo as conexões das assinaturas de outros clientes. Ao selecionar essa opção, verifique se as permissões de logon e de usuário limitam o acesso somente a usuários autorizados.

    • Criar uma instância do servidor flexível Banco de Dados do Azure para PostgreSQL com acesso público e permitir todos os endereços IP:
      az postgres flexible-server create --public-access all
      

      Observação

      O comando acima cria uma regra de firewall com o endereço IP inicial = 0.0.0.0, o endereço IP final = 255.255.255.255, e nenhum endereço IP é bloqueado. Qualquer hospedeiro na Internet pode acessar esse servidor. É extremamente recomendado usar essa regra apenas temporariamente e somente em servidores de teste que não contenham dados confidenciais.

  • Criar uma instância do servidor flexível Banco de Dados do Azure para PostgreSQL com acesso público sem nenhum endereço IP:

    az postgres flexible-server create --public-access none
    

    Observação

    Não recomendamos a criação de um servidor sem nenhuma regra de firewall. Se você não adicionar nenhuma regra de firewall, nenhum cliente poderá se conectar ao servidor.

Criar e gerenciar a função do firewall após a criação do servidor

O comando az postgres flexible-server firewall-ruleé usado na CLI do Azure para criar, excluir, listar, exibir e atualizar funções do firewall.

Comandos:

  • create: criar uma regra de firewall do servidor flexível do Banco de Dados do Azure para PostgreSQL.
  • list: listar regras de firewall do servidor flexível do Banco de Dados do Azure para PostgreSQL.
  • update: atualizar uma regra de firewall do servidor flexível do Banco de Dados do Azure para PostgreSQL.
  • show: mostrar os detalhes de uma regra de firewall do servidor flexível do Banco de Dados do Azure para PostgreSQL.
  • delete: excluir uma regra de firewall do servidor flexível do Banco de Dados do Azure para PostgreSQL.

Consulte a documentação de referência da CLI do Azure para obter a lista completa de parâmetros configuráveis da CLI. Por exemplo, nos comandos a seguir, você tem a opção de especificar o grupo de recursos.

Criar uma regra de firewall

Use o az postgres flexible-server firewall-rule create comando para criar uma nova regra de firewall no servidor de rede. Para permitir o acesso a um intervalo de endereço IP, forneça como endereço IP Inicial e endereço IP Final, como neste exemplo. Esse comando também espera o nome do grupo de recursos do Azure em que o servidor está localizado como um parâmetro.

az postgres flexible-server firewall-rule create --name mydemoserver --resource-group testGroup --start-ip-address 13.83.152.0 --end-ip-address 13.83.152.15

Para permitir o acesso de um endereço IP único, apenas forneça o endereço IP, como neste exemplo.

az postgres flexible-server firewall-rule create --name mydemoserver  --resource-group testGroup  --start-ip-address 1.1.1.1

Para permitir que aplicativos dos endereços IP do Azure se conectem à sua instância do servidor flexível do Banco de Dados do Azure para PostgreSQL, forneça o endereço IP 0.0.0.0 como IP Inicial, como neste exemplo.

az postgres flexible-server firewall-rule create --name mydemoserver --resource-group testGroup --start-ip-address 0.0.0.0

Importante

Esta opção configura o firewall para permitir todas as conexões do Azure incluindo as conexões das assinaturas de outros clientes. Ao selecionar essa opção, verifique se as permissões de logon e de usuário limitam o acesso somente a usuários autorizados.

Após o sucesso, cada saída do comando de criação listará os detalhes da regra de firewall que você criou no formato JSON (por padrão). Se houver uma falha, a saída mostrará o texto da mensagem de erro em vez disso.

Listar regras de firewall

Use oaz postgres flexible-server firewall-rule listcomando para listar as funções do firewall do servidor existentes no servidor. Observe que o atributo de nome do servidor é especificado na opção --opção interruptor.

az postgres flexible-server firewall-rule list --name mydemoserver --resource-group testGroup

A saída listará as regras, se houver, no formato JSON (por padrão). É possível usar a opção--output table para gerar os resultados em um formato de tabela mais legível.

az postgres flexible-server firewall-rule list --name mydemoserver --resource-group testGroup --output table

Atualizar uma regra de firewall

Use o az postgres flexible-server firewall-rule updatecomando para atualizar uma função do firewall existente no servidor. Forneça o nome da regra de firewall existente como entrada, bem como os atributos de endereço IP inicial e IP final a serem atualizados.

az postgres flexible-server firewall-rule update --name mydemoserver --rule-name FirewallRule1 --resource-group testGroup --start-ip-address 13.83.152.0 --end-ip-address 13.83.152.1

Após o sucesso, a saída do comando listará os detalhes da regra de firewall atualizada no formato JSON (por padrão). Se houver uma falha, a saída mostrará o texto da mensagem de erro em vez disso.

Observação

Se a regra de firewall não existir, ela será criada pelo comando de atualização.

Mostrar detalhes da regra de firewall

Use o az postgres flexible-server firewall-rule showcomando para mostrar os detalhes da função do firewall existente do servidor. Forneça o nome da regra de firewall existente como entrada.

az postgres flexible-server firewall-rule show --name mydemoserver --rule-name FirewallRule1 --resource-group testGroup

Após o êxito, a saída do comando listará os detalhes da regra de firewall especificado, em formato JSON (por padrão). Se houver uma falha, a saída mostrará o texto da mensagem de erro em vez disso.

Excluir uma regra de firewall

Use o az postgres flexible-server firewall-rule delete comando para excluir uma regra de firewall existente no servidor. Forneça o nome da regra de firewall existente.

az postgres flexible-server firewall-rule delete --name mydemoserver --rule-name FirewallRule1 --resource-group testGroup

Após o êxito, não haverá saída. Em caso de falha, o texto da mensagem de erro será exibido.

Próximas etapas