Todos os produtos
Search
Central de documentação

Edge Security Acceleration:Referência do Terraform

Última atualização: Jun 29, 2026

O Terraform é uma ferramenta de infraestrutura como código (IaC) open source que permite definir e gerenciar configurações de infraestrutura por meio de uma linguagem declarativa. Com o Terraform, você adiciona, modifica ou exclui recursos do Edge Security Acceleration (ESA), reduzindo o trabalho manual e os erros, além de melhorar a gerenciabilidade e a manutenção da infraestrutura. Este tópico lista os recursos do ESA compatíveis com o Terraform e descreve como instale e configure a ferramenta.

Recursos compatíveis

Resources

alicloud_esa_cache_reserve_instance: Fornece um recurso de instância de reserva de cache do ESA. Crie uma instância de reserva de cache com renovação automática para pré-alocar recursos de cache de alto throughput no serviço de aceleração de armazenamento em nuvem, melhorando o desempenho de resposta para dados acessados frequentemente.

alicloud_esa_cache_rule: Disponibiliza um recurso de regra de cache do ESA. Configure regras de cache nos POPs para seguir políticas de cache de origem, desativar o cache do navegador, ignorar variações de string de consulta e incluir parâmetros específicos de controle de cache por cookie ou cabeçalho.

alicloud_esa_certificate: Oferece um recurso de certificado do ESA. Solicita e implanta automaticamente certificados SSL gratuitos do Let's Encrypt para implementar criptografia de comunicação HTTPS.

alicloud_esa_client_ca_certificate: Provê um recurso de certificado de CA de cliente do ESA. Faz upload de um certificado raiz de CA de cliente para cenários de autenticação TLS mútua (mTLS) e verifique a legitimidade dos certificados de cliente. Assim, apenas certificados emitidos por CAs confiáveis conseguem acessar os serviços.

alicloud_esa_client_certificate: Disponibiliza um recurso de certificado de cliente do ESA. Crie certificados de cliente criptografados com RSA para implementar uma verificação forte de identidade do cliente em cenários mTLS.

alicloud_esa_compression_rule: Fornece um recurso de regra de compactação do ESA. Configure regras de compactação para nomes de domínio com condições predefinidas para ative políticas específicas.

alicloud_esa_edge_container_app: Oferece um recurso de aplicativo de contêiner Edge do ESA. Crie um aplicativo de contêiner, encaminha tráfego externo para ele e configure uma verificação de integridade da Camada 7. A verificação usa o método HEAD para checar o caminho / a cada 5 segundos, possui timeout de 3 segundos e altera o status após dois sucessos consecutivos ou cinco falhas consecutivas. Essa configuração habilita o monitoramento automatizado de integridade e o isolamento de falhas para o serviço de contêiner.

alicloud_esa_edge_container_app_record: Provê um recurso de registro de aplicativo de contêiner Edge do ESA. Implante aplicativos de contêiner Edge, configure verificações de integridade da Camada 7 (método HEAD para detectar o caminho /) e anexe nomes de domínio para redirecionar o tráfego. Certifique-se de que o serviço na porta 3000 do contêiner esteja ativo e que os parâmetros de verificação de integridade atendam aos seus requisitos de negócio.

alicloud_esa_http_request_header_modification_rule: Disponibiliza um recurso de regra de modificação de cabeçalho de solicitação HTTP do ESA. Configure regras de modificação para alterar valores de cabeçalhos de solicitação, fornecendo regras predefinidas que suportam depuração granular de tráfego.

alicloud_esa_http_response_header_modification_rule: Fornece o recurso de regra de modificação de cabeçalho de resposta HTTP do ESA. Permite controle granular e baseado em cenários sobre cabeçalhos de resposta HTTP para tráfego de domínio mediante aplicação de regras de modificação. Por exemplo, adicione o cabeçalho exampleadd, exclua o cabeçalho exampledel e modifique o valor do cabeçalho examplemodify.

alicloud_esa_https_application_configuration: Oferece um recurso de configuração de aplicativo HTTPS do ESA. Configure parâmetros da camada de aplicativo HTTPS para nomes de domínio, incluindo o período máximo de validade para HSTS, e ative recursos de extensão de segurança como regras, imposição de HSTS e Alt-SVC.

alicloud_esa_https_basic_configuration: Disponibiliza um recurso de configuração básica de HTTPS do ESA. Ativa forçosamente uma política global de criptografia HTTPS.

alicloud_esa_image_transform: Provê um recurso de transformação de imagem do ESA. Configure regras de conversão de formato de imagem para nomes de domínio.

alicloud_esa_kv: Fornece um recurso de Key-Value Store de borda do ESA para armazenar e gerencie dados de configuração leves ou conteúdo estático nos POPs, com suporte a leituras rápidas e acesso de baixa latência.

alicloud_esa_kv_namespace: Disponibiliza um recurso de namespace KV do ESA. Crie um namespace de armazenamento Key-Value para isolar o armazenamento e gerencie dados de configuração, como políticas de segurança, regras dinâmicas, chaves de API e parâmetros de grayscale. Isso oferece capacidades de gerenciamento de metadados leves e atualizáveis em tempo real para aceleração segura.

alicloud_esa_list: Oferece um recurso de lista do ESA para visualize a lista de sites do ESA.

alicloud_esa_network_optimization: Provê um recurso de otimização de rede do ESA. Configura regras de otimização de rede para solicitações correspondentes a nomes de domínio, suporta protocolos de origem WebSocket, gRPC ou HTTP/2 e limita o tamanho máximo de upload de arquivos. Otimize a transmissão de rede e implemente controles de segurança para tráfegos de serviços específicos.

alicloud_esa_origin_ca_certificate: Fornece o recurso de certificado de CA de origem do ESA. Configure um certificado de autoridade certificadora (CA) confiável para o serviço ESA. Isso permite que um POP do ESA verifique o certificado do servidor de origem ao estabelecer uma conexão back-to-origin HTTPS com um servidor de origem backend, garantindo a segurança e a confiabilidade da comunicação back-to-origin.

alicloud_esa_origin_client_certificate: Disponibiliza o recurso de certificado de cliente de origem do ESA. Crie ou faça upload de um certificado TLS de cliente e configure-o para o serviço ESA. Assim, um POP do ESA fornece autenticação de identidade de cliente ao servidor de origem quando o nó inicia uma solicitação de origem para o servidor backend como um cliente HTTPS. Esse processo implementa a verificação de identidade do cliente na autenticação TLS mútua (mTLS).

alicloud_esa_origin_pool: Oferece um recurso de pool de origem do ESA. Configure um pool misto com múltiplas origens, incluindo uma origem Alibaba Cloud OSS (autenticação por chave entre contas) e duas origens de armazenamento privado compatíveis com o protocolo S3 (autenticação por assinatura AWS v2). Distribua tráfego transfronteiriço para diferentes serviços de armazenamento em nuvem com base em uma proporção especificada, mantendo a compatibilidade back-to-origin por meio de reescrita do cabeçalho Host e TLS SNI.

alicloud_esa_origin_protection: Provê um recurso de configuração de proteção de origem do ESA para configure e gerencie centralmente políticas de mitigação de segurança para servidores de origem backend. Ao ocultar os endereços IP reais dos servidores de origem, forçar o encaminhamento de tráfego pelos POPs do ESA e ative mecanismos de autenticação de segurança, evita que os servidores fiquem diretamente expostos à internet. Defenda-se contra ameaças como ataques DDoS, ataques CC e sondagens de varredura, melhorando a disponibilidade geral e a segurança dos serviços backend.

alicloud_esa_origin_rule: Disponibiliza um recurso de Regra de Origem do ESA. Encaminhe tráfego para a porta de origem via protocolo HTTP e ative a passagem do cabeçalho Host, extensão SNI e suporte a transferência fragmentada (Range).

alicloud_esa_page: Fornece um recurso de página do ESA. Crie uma página de erro personalizada com um modelo HTML codificado em Base64. Quando decodificado, o modelo resulta em uma página padrão de acesso proibido 403 com declaração de idioma chinês.

alicloud_esa_rate_plan_instance: Oferece um recurso de instância de Plano de Tarifas do ESA. Crie uma instância de faturamento tipo NS no modelo de assinatura e ative a renovação automática e o pagamento automático. Estabeleça a cota básica de recursos e a estrutura de faturamento para implantações subsequentes de serviços do Global Accelerator, como sites e regras de roteamento.

alicloud_esa_record: Provê um recurso de registro do ESA para adicionar registros e defina prioridade, peso e TTL, implementando descoberta de serviços e balanceamento de carga baseados no protocolo DNS.

alicloud_esa_redirect_rule: Disponibiliza um recurso de regra de redirecionamento do ESA, configurando uma regra de redirecionamento permanente 301 que encaminha automaticamente para um endereço de destino estático, preservando os parâmetros de consulta da solicitação original.

alicloud_esa_rewrite_url_rule: Fornece um recurso de regra de reescrita de URL do ESA. Quando ativada, a regra reescreve estaticamente o caminho e defina parâmetros de consulta fixos, proporcionando controle preciso do caminho da solicitação e padronização de parâmetros.

alicloud_esa_routine: Oferece um recurso de Edge Routine do ESA. Uma Edge Routine é uma Função Edge leve executada em POPs globais. Utilize JavaScript personalizado ou scripts com sintaxe similar para processar dinamicamente solicitações e respostas HTTP ou HTTPS na borda da rede, mais perto dos usuários finais, habilitando lógica personalizada com alta performance e baixa latência.

alicloud_esa_routine_route: Provê um recurso de roteamento de Edge Routine do ESA. Anexe uma Edge Routine criada (definida por alicloud_esa_routine) a nomes de domínio, caminhos ou hostnames específicos e defina as condições de solicitação que disparam a execução da Edge Routine, implementando o agendamento de lógica de borda baseado em regras de roteamento.

alicloud_esa_scheduled_preload_execution: Disponibiliza um recurso de execução de pré-carregamento agendado do ESA. Dispare uma tarefa de pré-busca configurada para execute automaticamente em um horário especificado, carregando proativamente o conteúdo de URLs definidas para o cache dos POPs. Melhore a velocidade de resposta no acesso do usuário, ideal para cenários de pré-carregamento periódico ou antes de picos de tráfego.

alicloud_esa_scheduled_preload_job: Fornece um recurso para tarefas de pré-busca agendada do ESA. Crie e gerencie tarefas periódicas de pré-busca de cache. Ao configure frequência de execução, lista de URLs alvo e nome de domínio associado, você pré-carrega automaticamente o conteúdo nos POPs. Aumente a eficiência de resposta para recursos acessados frequentemente e otimize a experiência de acesso do usuário.

alicloud_esa_site: Oferece um recurso de site do ESA. Adquira uma assinatura para uma instância Basic Edition tipo NS do Global Accelerator, crie um site e anexe-o a um grupo de recursos para automatizar a implantação de capacidades globais de aceleração de rede.

alicloud_esa_site_delivery_task: Provê um recurso de tarefa de entrega de site do ESA. Configure uma tarefa de entrega de logs HTTP para transmitir dados de log contendo 12 campos principais de monitoramento para um endereço de destino em tempo real, usando compressão gzip. Defina tamanho máximo de lote, mecanismo de tentativa e controles de timeout para garantir transmissão de logs confiável e oportuna.

alicloud_esa_site_origin_client_certificate: Disponibiliza um recurso de certificado de cliente de origem no nível de site do ESA. Configure um certificado TLS de cliente para um site acelerado específico. O certificado permite que os POPs do ESA usem TLS mútuo (mTLS) para autenticação com o servidor de origem durante uma busca de origem. Garanta que apenas POPs confiáveis acessem serviços de origem que exigem autenticação por certificado de cliente, aumentando a segurança da comunicação back-to-origin.

alicloud_esa_version: Fornece o recurso de Versão de Site do ESA. Use esa_version para crie, salve e reverter diferentes versões de configuração para sites acelerados, como sites de nome de domínio. Essas configurações incluem regras de cache, certificados, políticas de roteamento e Edge Routines. Realize lançamentos graduais, comparações de versão e reversões rápidas para alterações de configuração, assegurando estabilidade e manutenibilidade durante o processo de atualização do site.

alicloud_esa_video_processing: Oferece recursos de processamento de vídeo do ESA. Execute operações em conteúdo de vídeo nos POPs, como transcodificação em tempo real, capturas de tela, marca d'água, conversão de formato e streaming de taxa de bits adaptativa (como geração de fragmentos HLS ou DASH). Defina modelos de processamento de vídeo ou regras de tarefa. Combinadas com um nome de domínio acelerado, essas regras disparam automaticamente um fluxo de processamento de vídeo para realizar processamento leve de mídia mais próximo do usuário. Reduza a carga no servidor de origem e melhore a velocidade de carregamento e a experiência de reprodução de vídeo.

alicloud_esa_waiting_room: Provê um recurso de sala de espera do ESA. Configure uma sala de espera, incluindo regras de controle de tráfego baseadas em fila FIFO (first-in, first-out), limites de usuários ativos, duração de sessão e configuração de caminhos para múltiplos subdomínios. Utilize capacidades predefinidas de controle grayscale para cenários de pico de tráfego.

alicloud_esa_waiting_room_event: Disponibiliza um recurso de evento de sala de espera do ESA. Configure salas de espera e suas regras de evento para controlar picos de tráfego e evitar sobrecarga do servidor usando um mecanismo de gerenciamento de fila first-in, first-out (FIFO) quando necessário.

alicloud_esa_waiting_room_rule: Fornece um recurso de regra de sala de espera do ESA. Esta regra ativa automaticamente o mecanismo de sala de espera para solicitações que atendem às condições de correspondência de tráfego durante picos. Enfileire e controle as solicitações para prevenir eficazmente a sobrecarga do servidor.

Instale o Terraform e configure permissões

Instale e configure o Terraform no seu computador

Para obter mais informações sobre como usar o Terraform no seu computador, consulte Instale e configure o Terraform.

  • Crie um par de AccessKey para um usuário RAM. Uma conta Alibaba Cloud possui todas as permissões sobre os recursos. Se o par de AccessKey da sua conta Alibaba Cloud vazar, seus recursos ficarão expostos a grandes riscos. Recomendamos o uso do par de AccessKey de um usuário RAM. Para mais detalhes, veja Crie um AccessKey.

  • Crie variáveis de ambiente para armazenar as credenciais de identidade.

    Crie e visualize seu AccessKey na página AccessKey Management.

    Se as variáveis de ambiente não estiverem configuradas, a verificação de identidade falhará ao execute o modelo do Terraform.

Usar um serviço online (sem necessidade de instalação ou configuração de permissões)

Caso não queira instale o Terraform, utilize o serviço online Cloud Shell.

O Alibaba Cloud Cloud Shell é um produto gratuito de operações e manutenção (O&M) pré-instalado com componentes do Terraform e credenciais de identidade configuradas. Portanto, execute comandos do Terraform diretamente no Cloud Shell. Para mais informações, consulte Crie recursos com o Terraform.

Importante

Ao usar o Terraform no Cloud Shell, o recurso destroy pode causar perda de dados. Recomendamos utilizar o Cloud Shell apenas para operações simples e rápidas, como depuração. Para saber mais sobre as limitações, veja Limites.

Referências

Crie plano, site e registro DNS com o Terraform

Terraform: Adicionar e configure sites do ESA

Etapa 1: Crie um script

Crie um diretório de trabalho. Dentro dele, crie um arquivo de configuração chamado main.tf. Adicione o seguinte código ao arquivo main.tf:

# Define a variable "name" with the default value "terraform-example" for resource naming.
variable "name" {
  default = "terraform-example"
}

# Configure the Alibaba Cloud provider and specify the region as "cn-hangzhou". China site: cn-hangzhou. International site: ap-southeast-1.
provider "alicloud" {
  region = "cn-hangzhou"
}

# Obtain the list of default resource groups from Alibaba Cloud Resource Management for subsequent resource assignment.
data "alicloud_resource_manager_resource_groups" "default" {
  # No parameters are configured. All resource groups are obtained.
}

# Create an Alibaba Cloud ESA (Edge Security Acceleration) rate plan instance.
resource "alicloud_esa_rate_plan_instance" "defaultIEoDfU" {
  type         = "NS"          # The billing type. NS indicates Network Service.
  auto_renew   = true          # Enable auto-renewal.
  period       = "1"           # The subscription period. Unit: month.
  payment_type = "Subscription" # The payment type. Subscription indicates the subscription billing method.
  coverage     = "overseas"    # The service coverage. overseas indicates outside China.
  auto_pay     = true          # Enable automatic payment.
  plan_name    = "basic"       # The name of the plan. For China site accounts: basic (Basic Edition), medium (Standard Edition), high (Pro Edition). For international site accounts: entranceplan_intl (Entrance), basicplan_intl (Pro), vipplan_intl (Premium).
}

# Generate a random integer from 10000 to 99999 to dynamically generate a unique site name.
resource "random_integer" "default" {
  min = 10000 # The minimum value.
  max = 99999 # The maximum value.
}

# Create an Alibaba Cloud ESA site. Use a random number to generate a unique domain name and associate the site with the rate plan instance.
resource "alicloud_esa_site" "default" {
  site_name         = "bcd${random_integer.default.result}.com" # The site name. A random number is included to ensure uniqueness.
  coverage          = "overseas"                                # The service coverage. overseas indicates outside China.
  access_type       = "NS"                                      # The access type. NS indicates Network Service.
  instance_id       = alicloud_esa_rate_plan_instance.defaultIEoDfU.id # The ID of the associated rate plan instance.
  resource_group_id = data.alicloud_resource_manager_resource_groups.default.ids.0 # The ID of the first default resource group.
}

Etapa 2: Inicializar o ambiente de execução do Terraform.

terraform init

A saída abaixo indica que o Terraform foi inicializado com sucesso.

Initializing the backend...
Initializing provider plugins...
...
Terraform has been successfully initialized!
...

Etapa 3: Execute o plano de execução

terraform apply

Durante a execução, insira yes no prompt, pressione a tecla Enter e aguarde a conclusão do comando. A mensagem a seguir indica que o nome de domínio acelerado foi adicionado.

You can apply this plan to save these new output values to the Terraform state, without changing any real infrastructure.

Do you want to perform these actions?
  Terraform will perform the actions described above.
  Only 'yes' will be accepted to approve.

  Enter a value: yes

Apply complete! Resources: 2 added, 0 changed, 0 destroyed.

A saída abaixo indica que a execução foi concluída.

Apply complete! Resources: 3 added, 0 changed, 0 destroyed.

Verifique os resultados

Verifique pela linha de comando

Execute o comando a seguir para consultar os detalhes dos recursos criados com o Terraform:

terraform show

image

Verifique pelo console

No console do ESA, escolha Websites. Na lista de sites, visualize o site adicionado via Terraform.

image