Todos os produtos
Search
Central de documentação

CDN:Configure uma lista de bloqueios ou de permissões de Referer

Última atualização: Jul 03, 2026

Uma lista de bloqueios ou de permissões de Referer controla o acesso aos seus recursos com base no cabeçalho Referer das requisições HTTP. Esse recurso evita hotlinking e o uso não autorizado de recursos. Após a configuração, o CDN e DCDN avaliam o cabeçalho Referer para conceder ou negar o acesso.

Importante
  • Por padrão, o recurso de lista de bloqueios/permissões de Referer da Alibaba Cloud CDN e DCDN está desativado, o que permite que qualquer site acesse seus recursos.

  • As listas de bloqueios e de permissões de Referer são uma forma de evitar hotlinking. Para conhecer outros métodos, consulte Práticas recomendadas para prevenção de hotlinking.

  • Ao adicionar um nome de domínio como aliyundoc.com a uma lista de Referer, o CDN e DCDN aplicam a regra tanto ao próprio domínio quanto a todos os seus subdomínios (como *.aliyundoc.com).

Anatomia de um Referer

O cabeçalho Referer indica a URL da página de onde se originou uma requisição. Uma URL de Referer consiste em esquema, domínio, caminho e parâmetros de consulta, conforme ilustrado na figura a seguir.

image
Nota
  • O valor de um cabeçalho Referer é essencialmente uma URL.

  • A Alibaba Cloud oferece suporte a configurações de Referer apenas por domínio. Para ativar essa opção, selecione Ignore Scheme.

Casos de uso

Uma lista de bloqueios ou de permissões de Referer protege principalmente os recursos do seu site contra vinculação direta ou uso por outros sites. Os casos de uso comuns incluem:

  • Proteção de direitos autorais: Em sites com conteúdo protegido por direitos autorais, utilize uma lista de permissões de Referer para restringir o acesso apenas a sites autorizados.

  • Prevenção de hotlinking: Uma lista de permissões garante que seus recursos sejam acessados somente a partir de sites específicos, impedindo que outros sites consumam sua largura de banda ao criar links diretos para o seu conteúdo.

  • Segurança aprimorada do site: Ao permitir que apenas sites específicos acessem seus recursos, você evita hotlinking malicioso, acessos não autorizados e roubo de informações confidenciais.

  • Controle de source de tráfego: Restrinja o tráfego proveniente de sites específicos para controlar as fontes de tráfego e melhorar a estabilidade e a segurança do seu site.

Como funciona

Um Point of Presence (POP) verifica o cabeçalho Referer de cada requisição. Se o Referer não estiver na lista de permissões ou estiver na lista de bloqueios, o POP nega a requisição. Isso economiza largura de banda e reduz a carga no servidor de origem. O CDN e DCDN utilizam as seguintes regras para processar requisições de Referer:

  • Se o Referer em uma requisição corresponder a uma entrada na lista de bloqueios ou não corresponder a nenhuma entrada na lista de permissões, o CDN e DCDN negam a requisição.

  • Caso o Referer em uma requisição corresponda a uma entrada na lista de permissões, o CDN e DCDN permitem a requisição.

image

Observações de uso

  • Após configurar uma lista de bloqueios de Referer, as requisições de fontes bloqueadas ainda podem alcançar os POPs do CDN e DCDN. No entanto, essas requisições são rejeitadas com um código de status 403 e registradas nos logs do CDN e DCDN.

  • O recurso de lista de bloqueios/permissões de Referer impõe controle de acesso com base no cabeçalho Referer em uma requisição HTTP. O bloqueio de requisições gera uma pequena taxa referente ao tráfego produzido. Para HTTPS, também há cobrança por requisição.

  • Como o hotlinking de CDN tem origem em acessos pela rede pública, as regras de Referer se aplicam apenas a nomes de domínio públicos.

Procedimento

  1. Faça login no CDN console.

  2. No painel de navegação à esquerda, clique em Domain Names.

  3. Na página Domain Names, localize o nome de domínio desejado e clique em Manage na coluna Actions.

  4. No painel de navegação do domínio, clique em Access Control.

  5. Na aba Referer Black/Whitelist, clique em Modify.

  6. Configure os parâmetros de Referer. Para mais informações, consulte Parâmetros de configuração de Referer.

  7. Clique em OK para salvar a configuração.

Parâmetros de configuração de Referer

Parâmetro

Descrição

Type

  • Blacklist

    O POP nega acesso a requisições que contêm um Referer presente na lista de bloqueios.

  • Whitelist

    O POP permite apenas requisições que contêm um Referer presente na lista de permissões.

Nota

Listas de bloqueios e de permissões são mutuamente exclusivas. Selecione apenas um tipo por vez.

Rules

  • Adicione vários Referers separando cada entrada com uma quebra de linha.

  • Utilize um asterisco () como curinga para corresponder a todos os subdomínios. Por exemplo, .example.com corresponde a todos os subdomínios de example.com.

  • Sem a especificação de um curinga, uma entrada corresponde tanto ao próprio domínio quanto a todos os seus subdomínios. Por exemplo, uma entrada para example.com corresponde tanto a example.com quanto a *.example.com.

Nota
  • O tamanho total de todas as regras em uma lista de Referer não pode exceder 60 KB.

  • Não é necessário incluir o esquema nas regras.

Redirect URL

Se uma requisição for bloqueada, o POP retorna um redirecionamento 302 com um cabeçalho de resposta Location. Este parâmetro especifica o valor para o cabeçalho Location. A URL deve começar com http:// ou https://. Exemplo: http://www.example.com.

Advanced Settings

Allow resource URL access from browsers

Esta opção vem desmarcada por padrão. Ao selecioná-la, requisições com Referer vazio não são bloqueadas e têm permissão para acessar o recurso, independentemente das configurações da sua lista.

Um Referer vazio é definido como uma das seguintes situações:

  • A requisição não inclui um cabeçalho Referer.

  • O valor do cabeçalho Referer está vazio.

Exact Match

Esta opção vem desmarcada por padrão. Se selecionada, o comportamento padrão de correspondência de subdomínios é desativado. Sem o uso de curinga, uma entrada como example.com corresponde apenas a example.com.

Ignore Scheme

  • Com a opção Ignore Scheme desmarcada, o cabeçalho Referer deve incluir um esquema HTTP ou HTTPS.

  • Ao selecionar a opção Ignore Scheme, o cabeçalho Referer não precisa incluir um esquema.

Rule Condition

Uma condição de regra identifica várias informações de parâmetros em uma requisição de usuário. Isso determina se uma configuração entra em vigor para essa requisição.

Importante

Ao referenciar condições de regra, a correspondência ocorre com base na prioridade das condições associadas, e não na ordem de configuração do próprio recurso.

  • Não utilizar: Não usa uma condição de regra.

  • Para adicionar ou editar condições de regra, gerencie-as no Rules Engine.

Exemplo de configuração

Nota

Suponha que você queira permitir o acesso ao arquivo de vídeo http://video.aliyun.com/yun.mp4 apenas a partir do seu próprio servidor de origem.

  1. Na aba Referer Black/Whitelist, clique em Modify e selecione Whitelist.

  2. No campo Rules, insira video.aliyun.com. Deixe o campo Redirect URL vazio. Desmarque a caixa de seleção Allow resource URL access from browsers. Marque as caixas de seleção Exact Match e Ignore Scheme.

  3. Clique em OK para concluir a configuração.

Verificação da configuração

Utilize o comando curl para testar sua configuração. Use a opção -e para especificar o valor do Referer e a opção -I para recuperar apenas os cabeçalhos de resposta do nome de domínio acelerado. Os exemplos a seguir usam uma lista de permissões para verificação.

Cenário 1: Apenas o parâmetro Rules

Nota
  1. Neste cenário, uma regra de Referer para aliyun.com está configurada. Os parâmetros Redirect URL, Advanced Settings e Rule Condition não estão configurados.

  2. Essa configuração corresponde a requisições que contêm um Referer de http(s)://aliyun.com ou de seus subdomínios. Requisições com Referers que não estejam na lista de permissões são rejeitadas.

  1. Teste o acesso com um Referer do domínio principal. Comando: curl -e http://aliyun.com -I <accelerated_domain_name>.

    HTTP/1.1 200 OK
    Server: Tengine
  2. Teste o acesso com um Referer de um subdomínio. Comando: curl -e http://sub.aliyun.com -I <accelerated_domain_name>.

    HTTP/1.1 200 OK
    Server: Tengine
  3. Teste o acesso com um Referer de um domínio diferente. Comando: curl -e http://aIiyun.com -I <accelerated_domain_name>.

    HTTP/1.1 403 Forbidden
    Server: Tengine
  4. Teste o acesso com um Referer vazio. Comando: curl -e "" -I <accelerated_domain_name>.

    HTTP/1.1 403 Forbidden
    Server: Tengine
  5. Teste o acesso com um Referer apenas de domínio. Comando: curl -e aliyun.com -I <accelerated_domain_name>.

    HTTP/1.1 403 Forbidden
    Server: Tengine

Cenário 2: Rule e Allow resource URL access from browsers

Nota
  1. Neste cenário, a regra de Referer está definida como aliyun.com e a opção Allow direct access to resource URLs from browsers está selecionada. Outras configurações avançadas, a URL de redirecionamento e a condição de regra não estão configuradas.

  2. Em comparação com o Cenário 1, esta configuração também permite requisições com um Referer vazio, como requisições provenientes de acesso direto pelo navegador.

  1. Teste o acesso sem um Referer. Comando: curl -I <accelerated_domain_name>.

    HTTP/1.1 200 OK
    Server: Tengine
  2. Teste o acesso com um valor de Referer em branco (""). Comando: curl -e "" -I <accelerated_domain_name>.

    HTTP/1.1 200 OK
    Server: Tengine

Cenário 3: Rule e Ignore Scheme

Nota
  1. Neste cenário, a regra de Referer está definida como aliyun.com e a opção Ignore Scheme está selecionada. Outras configurações avançadas, a URL de redirecionamento e a condição de regra não estão configuradas.

  2. Esta configuração é semelhante ao Cenário 1, mas também permite requisições de Referer que não incluem um esquema, como uma requisição contendo apenas o nome de domínio aliyun.com.

Teste o acesso com um Referer que não possui esquema. Comando: curl -e aliyun.com -I <accelerated_domain_name>.

HTTP/1.1 200 OK
Server: Tengine

Perguntas frequentes

Esquema de Referer ausente

Na maioria dos casos, o cabeçalho Referer em uma requisição de usuário inclui um esquema HTTP ou HTTPS. No entanto, em certas situações, o Referer pode não incluir um esquema.

Um cenário comum ocorre quando um usuário navega de um site não seguro (que usa HTTP) para um site seguro (que usa HTTPS). Os navegadores podem modificar ou remover o cabeçalho Referer com base em políticas de segurança, como a Referrer-Policy, para proteger os dados do usuário. Nesse caso, o cabeçalho Referer pode conter apenas o domínio, sem o esquema.

Além disso, alguns navegadores ou servidores proxy podem remover automaticamente o cabeçalho Referer em situações específicas, como quando o modo de navegação privada está ativado ou quando um site é acessado por meio de um proxy anônimo.

Portanto, é preciso considerar requisições que não possuem esquema no cabeçalho Referer. Para corresponder a essas requisições, selecione a opção Ignore Scheme.

Tratamento de Referer vazio

Um Referer vazio ocorre quando o cabeçalho Referer está ausente em uma requisição HTTP ou quando seu valor está vazio. O cabeçalho Referer em uma requisição geralmente contém uma URI completa que inclui o esquema (como http ou https), um nome de host e, possivelmente, um caminho e uma string de consulta. Um Referer vazio pode ocorrer nos seguintes cenários:

  • Acesso direto: Quando um usuário digita uma URL diretamente na barra de endereços do navegador, usa um favorito ou abre um link em uma nova aba em branco, não existe página de referência. Consequentemente, o cabeçalho Referer fica vazio.

  • Privacidade do usuário: O usuário ou um software utilizado por ele, como uma extensão de navegador ou modo de privacidade, pode remover intencionalmente o cabeçalho Referer para proteger sua privacidade.

  • Protocolo de segurança: Ao navegar de uma página HTTPS para uma página HTTP, o navegador geralmente não envia o cabeçalho Referer para evitar o vazamento de informações confidenciais.

  • Política do lado do cliente: Alguns sites ou aplicativos podem controlar se o cabeçalho Referer é enviado por motivos de segurança, definindo uma tag <meta> ou um cabeçalho HTTP como Referrer-Policy.

  • Requisição cross-origin: Algumas requisições cross-origin podem não incluir o cabeçalho Referer devido a políticas de segurança do navegador.

A forma de lidar com requisições com Referer vazio depende do seu caso de uso específico e dos requisitos de segurança. Veja algumas recomendações:

  • Política padrão: Se o seu serviço não depender de informações de Referer para tomar decisões, permita requisições com Referer vazio.

  • Permitir acesso: Para URLs ou origens específicas, selecione a opção Allow resource URL access from browsers. Isso permite o acesso mesmo se o Referer estiver vazio. Nesse caso, os POPs do CDN e DCDN concedem acesso ao recurso.