O ApsaraVideo VOD permite configurar políticas de acesso para seus recursos de vídeo usando lista de bloqueios/lista de permissões de Referer, lista de bloqueios/lista de permissões de User-Agent e lista de bloqueios/lista de permissões de IP. Esse recurso oferece proteção básica, é fácil de usar (exige apenas configuração na nuvem) e entra em vigor rapidamente.
Lista de bloqueios/lista de permissões de Referer
Introdução
Esse recurso usa o cabeçalho HTTP Referer para identificar a origem de uma solicitação. Configure uma lista de bloqueios ou uma lista de permissões de Referer (mutuamente exclusivas) para restringir o acesso aos seus recursos de vídeo.
Os modos de lista de bloqueios e lista de permissões são compatíveis. Quando um visitante solicita um recurso, a requisição chega a um ponto de presença (POP). O POP filtra a solicitação com base na lista de bloqueios/lista de permissões de proteção contra hotlink configurada. Se a requisição atender às regras, o sistema entregará os dados do vídeo. Caso contrário, a solicitação será negada com um código de status HTTP 403.
O suporte a domínios curinga é ativado automaticamente. Por exemplo, adicionar example.com à lista cria uma regra efetiva de *.example.com, que se aplica a todos os subdomínios.
Por padrão, solicitações com cabeçalho Referer vazio são permitidas, pois clientes móveis frequentemente omitem esse cabeçalho. É possível desativar essa opção.
Como o Referer é um cabeçalho HTTP, ele pode ser facilmente falsificado, o que oferece baixo nível de segurança.
Para obter instruções detalhadas, consulte Configurar proteção contra hotlink.
Exemplo
Configure a lista de permissões de Referer para o domínio VOD example.cn-shanghai.aliyuncs.com com aliyundoc.com e não permita solicitações com cabeçalho Referer vazio. Envie uma solicitação da seguinte forma:
curl -i 'http://example.cn-shanghai.aliyuncs.com/sv/5101d1f8-1643f9a****/5101d1f8-1643f9a****.mp4'
-
Resposta
ali-186590dxxx:~ xxxan$ curl -i 'http://xxx.cn-shanghai.aliyuncs.com/sv/5101d1f8-1643f9axxx/5101d1f8-1643f9axxx.mp4' HTTP/1.1 403 Forbidden Server: Tengine Date: Wed, 27 Jun 2018 04:58:15 GMT Content-Type: text/html Content-Length: 254 Connection: keep-alive X-Tengine-Error: denied by Referer ACL Access-Control-Allow-Origin: * Via: cache2.cn491[,403003] Timing-Allow-Origin: * EagleId: 7b7d12ca153007549506xxxSe a solicitação incluir um Referer permitido, o sistema retornará uma resposta normal:
curl -i 'http://example.cn-shanghai.aliyuncs.com/sv/5101d1f8-1643f9a****/5101d1f8-1643f9a****.mp4' \ -H 'Referer: http://www.aliyundoc.com'
Lista de bloqueios/lista de permissões de User-Agent
Introdução
O User-Agent é um cabeçalho de string que ajuda o servidor a identificar atributos do cliente, como sistema operacional, navegador, versão e plug-ins instalados. Use uma lista de bloqueios/lista de permissões de User-Agent para restringir o acesso de navegadores ou dispositivos específicos.
Como o User-Agent é um cabeçalho HTTP, ele pode ser facilmente falsificado, o que oferece baixo nível de segurança.
Para obter instruções detalhadas, consulte Configurar uma lista de bloqueios/lista de permissões de User-Agent.
Exemplo
-
Por exemplo, o User-Agent para Internet Explorer 9 em um PC:
User-Agent:Mozilla/5.0(compatible;MSIE9.0;WindowsNT6.1;Trident/5.0; -
Simule uma solicitação HTTP para verificar:
curl -i 'http://example.cn-shanghai.aliyuncs.com/sv/5101d1f8-1643f9a****.mp4' \ -H 'User-Agent: iPhone OS;MI 5'
Lista de bloqueios/lista de permissões de IP
Introdução
-
Adicione endereços IP individuais e blocos CIDR.
Por exemplo, no bloco CIDR
172.16.0.0/24, o /24 indica um prefixo de rede de 24 bits. Isso deixa 32-24=8 bits para endereços de host, permitindo 28=256 endereços. Portanto, esse bloco CIDR representa o intervalo de IP de 172.16.0.0 a 172.16.0.255. Escolha usar remote_addr ou X-Forwarded-For (XFF) como endereço IP de source da solicitação ou corresponda a ambos.
O mecanismo de lista de bloqueios/lista de permissões de IP não é adequado para distribuição ampla de conteúdo. Além disso, invasores podem contornar listas de permissões se usarem um endereço IP de um intervalo permitido.
Para obter instruções detalhadas, consulte Configurar uma lista de bloqueios/lista de permissões de IP.