Todos os produtos
Search
Central de documentação

CDN:Configurar assinatura de URL

Última atualização: Jul 03, 2026

Por padrão, o conteúdo distribuído pelo CDNDCDN é público e acessível a qualquer pessoa que possua sua URL. Para proteger os recursos de origem contra acessos não autorizados e downloads maliciosos, utilize a assinatura de URL em conjunto com outros métodos de controle de acesso, como proteção contra hotlinking por Referer e listas de bloqueios/permissões de IP. A assinatura de URL protege seu conteúdo ao validar a string criptografada e o timestamp contidos em uma URL assinada.

Como funciona

A assinatura de URL impede o acesso não autorizado aos recursos de origem coordenando as solicitações entre os POPs do Alibaba Cloud CDNDCDN e sua origem. O processo envolve três componentes principais:

  • Servidor de aplicativos de origem: gera uma URL assinada com base em uma regra de assinatura definida, incluindo algoritmo e chave, e a retorna ao cliente.

  • Cliente: envia a URL assinada a um POP do CDNDCDN para solicitar um recurso.

  • **POP do CDNDCDN**: valida as informações na URL assinada, como a string de assinatura e o timestamp.

image
  1. Os clientes do CDN or DCDN configuram as regras de geração de URLs assinadas (incluindo algoritmo de assinatura e chave) no servidor de aplicativos de origem.

    Por exemplo, uma URL assinada pode ter o formato http://DomainName/timestamp/md5hash/FileName.

  2. Quando um cliente visita uma página em seu aplicativo, o servidor de aplicativos de origem gera uma URL assinada conforme as regras configuradas e a incorpora à página retornada ao cliente.

  3. O cliente utiliza a URL assinada para solicitar o recurso de um POP do CDNDCDN.

  4. O POP do CDNDCDN valida as informações na URL assinada, como a string de assinatura e o timestamp, para determinar se a solicitação é legítima.

    • Se a autenticação falhar, o POP negará a solicitação.

    • Se a autenticação for bem-sucedida, o POP fornecerá o conteúdo.

      Nota
      • Caso um nó do CDNDCDN não tenha o recurso em cache, ele removerá os parâmetros de autenticação da URL assinada e a restaurará para a URL original (por exemplo, http://DomainName/FileName). Em seguida, usará a URL original para gerar uma chave de cache ou iniciar uma solicitação de busca na origem.

      • Após o CDNDCDN autenticar a URL da solicitação, ele codifica quaisquer caracteres especiais presentes nela, como caracteres chineses ou outros não ASCII.

Observações de uso

  • Mesmo após configurar a assinatura de URL, as solicitações com falha na autenticação ainda podem alcançar os nós do CDNDCDN, mas serão rejeitadas pelos nós do CDNDCDN, resultando no código de status 403. Os logs do CDNDCDN continuam registrando essas solicitações com falha de autenticação.

  • A assinatura de URL valida solicitações nos POPs do CDNDCDN. Portanto, a interceptação de solicitações maliciosas ainda consome uma pequena quantidade de tráfego faturável. Para solicitações HTTPS, aplicam-se taxas adicionais, pois os POPs do CDNDCDN consomem recursos de processamento para realizar a interceptação.

Configure e ative a assinatura de URL

Importante
  • Certifique-se de ter configurado as regras de geração de URLs assinadas, incluindo o algoritmo de assinatura e a chave, no servidor de aplicativos de origem.

  • A lógica de assinatura de URL configurada no console do CDNDCDN deve corresponder à lógica do servidor de aplicativos de origem.

  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. Clique na aba URL Signing.

  6. Na seção URL Signing, clique em Modify.

  7. Ative a opção Set URL Signing e configure os parâmetros.

    Parâmetro

    Descrição

    Type

    O Alibaba Cloud CDN oferece quatro métodos de assinatura. Selecione um tipo de assinatura com base no formato das suas URLs assinadas para proteger eficazmente os recursos de origem. Os seguintes tipos de assinatura de URL estão disponíveis:

    Nota

    Se a assinatura de URL falhar, um erro 403 será retornado:

    • Erro de cálculo MD5

      Exemplo: X-Tengine-Error:denied by req auth: invalid md5hash=de7bfdc915ced05e17380a149bd760be

    • Erro relacionado ao tempo

      Exemplo: X-Tengine-Error:denied by req auth: expired timestamp=1439469547

    Primary Key

    Insira a chave primária para o método de assinatura. A chave deve ter entre 6 e 128 caracteres e pode conter letras maiúsculas, minúsculas e dígitos.

    Secondary Key

    Insira a chave secundária para o método de assinatura. A chave deve ter entre 6 e 128 caracteres e pode conter letras maiúsculas, minúsculas e dígitos. É necessário especificar pelo menos uma chave primária ou secundária.

    TTL

    Defina o período de validade da URL assinada. O cliente deve acessar o recurso dentro do período definido por timestamp + TTL. Solicitações enviadas após esse período falham na autenticação.

    • Unidade: segundos

    • Valores válidos: 1 a 31536000

    • Valor padrão: 1800 (30 minutos)

    • Exemplo: Se o servidor de assinatura gerar uma URL assinada às 15:00:00 (UTC+8) em 15 de agosto de 2020 e o TTL for de 1.800 segundos, a URL assinada expirará às 15:30:00 (UTC+8) no mesmo dia.

    Signature Parameter

    Permite personalizar os nomes dos parâmetros de assinatura. Esta opção é válida apenas quando o tipo de autenticação está definido como Método F.

    Timestamp Parameter

    Permite personalizar o nome do parâmetro de timestamp. Esta configuração tem efeito apenas quando o tipo de autenticação está definido como Tipo F.

    Timestamp Format

    Defina o formato do timestamp, que pode ser decimal (timestamp Unix) ou hexadecimal (timestamp Unix). Esta definição só entra em vigor quando o tipo de autenticação está configurado como Tipo F.

    URL Encoding

    A opção de codificação de URL vem desativada por padrão. Ao ativá-la, as URLs de solicitação do usuário serão codificadas. Este recurso é eficaz somente quando o tipo de autenticação está definido como Método F.

    Rule Condition

    Uma condição de regra identifica diversas informações de parâmetros em uma solicitação do usuário, determinando se uma configuração específica terá efeito para essa solicitaçã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 aplica nenhuma condição de regra.

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

  8. Clique em OK.

Verifique a URL assinada

Após configurar a assinatura de URL, utilize o Gerador de URL Assinada no console CDN para criar uma URL assinada e validar a implementação. Esse procedimento confirma se a lógica de assinatura do servidor está correta.

  1. Na seção Signed URL Generator, especifique a Original URL (Unencoded) e outras informações de assinatura.

    Parâmetro

    Descrição

    Original URL (Unencoded)

    Insira a URL original completa, por exemplo, https://www.aliyun.com. A ferramenta codifica automaticamente a URL original ao gerar a URL assinada.

    Type

    Selecione o tipo de assinatura de URL com base nas configurações definidas na seção Configure e ative a assinatura de URL.

    Cryptographic Key

    Insira a Primary Key ou a Secondary Key configurada na seção Configure e ative a assinatura de URL.

    TTL

    Insira o TTL para a assinatura de URL em segundos, conforme as definições estabelecidas na seção Configure e ative a assinatura de URL.

  2. Clique em Generate para obter a Signed URL e o Timestamp.

Desativar a assinatura de URL

Importante

Se você desativar a assinatura de URL no console do CDNDCDN, mas as solicitações dos clientes ainda contiverem parâmetros de assinatura, o CDNDCDN não conseguirá restaurar as URLs de solicitação para o formato original. Isso causa falhas de cache, redirecionando todas essas solicitações para a origem. Consequentemente, o tráfego e os custos de origem aumentam significativamente. Portanto, para desativar completamente a assinatura de URL, remova a configuração tanto do servidor de aplicativos quanto do console do CDNDCDN.

image
  1. Na seção URL Signing do CDN console, clique em Modify e desative a opção de assinatura de URL.

  2. No servidor de aplicativos, remova a lógica que adiciona parâmetros de assinatura às URLs de solicitação.

Referência da API