A autenticação remota encaminha as solicitações do usuário para um servidor de autenticação especificado por você, e o servidor de autenticação valida as solicitações. Configure a autenticação remota para um nome de domínio acelerado quando o seu próprio servidor de autenticação, e não os POPs, deve decidir se uma solicitação está autorizada.
Como funciona
A autenticação remota e a assinatura de URL têm o mesmo objetivo: proteger os recursos para que apenas usuários autorizados possam acessá-los. Os dois recursos diferem na forma de implementação:
Assinatura de URL — Você distribui as regras de assinatura de um nome de domínio para os CDN POPs, e os CDN POPs realizam toda a troca de dados e o processo de autenticação.
Autenticação remota — Você opera o seu próprio servidor de autenticação. Após um POP CDN receber uma solicitação do usuário, ele encaminha a solicitação ao servidor de autenticação para validação.
Use a assinatura de URL quando os POPs CDN puderem aplicar as regras de autenticação por conta própria. Use a autenticação remota quando o seu próprio servidor de autenticação precisar tomar a decisão para cada solicitação.
O processo de troca de dados da autenticação remota ocorre da seguinte forma:
Nº | Descrição da interação |
① | Uma solicitação de acesso a recursos iniciada por um usuário chega a um POP CDN, e a solicitação carrega parâmetros de autenticação. Por exemplo, a URL da solicitação original é |
② | O POP CDN recebe a solicitação do usuário e a encaminha para o servidor de autenticação, diretamente ou após processá-la com base nas regras especificadas. Por exemplo, o endereço do servidor de autenticação é |
③ | O servidor de autenticação retorna um resultado de autenticação ao POP CDN com base nos parâmetros de autenticação presentes na solicitação do usuário. |
④ | O POP CDN executa a ação correspondente com base no resultado de autenticação retornado pelo servidor de autenticação e retorna os dados correspondentes ao usuário. Os exemplos a seguir descrevem os resultados de autenticação.
|
Observações de uso
Logs — Após configurar a autenticação remota, as solicitações com falha de autenticação ainda podem chegar aos POPs CDN, mas os POPs CDN rejeitam as solicitações e retornam o código de status HTTP especificado em Custom HTTP Status Code, como 403. Os registros de solicitação do cliente ainda são gravados nos logs do CDN.
Faturamento — A autenticação remota encaminha as solicitações do usuário para o servidor de autenticação especificado, portanto, você é cobrado pelas taxas de tráfego mesmo quando os POPs CDN bloqueiam solicitações maliciosas. O bloqueio de solicitações maliciosas consome os recursos de processamento dos POPs CDN. Se os clientes usarem HTTPS, você também será cobrado pelas solicitações HTTPS.
Pré-requisitos
Um servidor de autenticação implantado e gerenciado por você está disponível em um endereço acessível externamente.
Procedimento
-
Faça login no CDN console.
-
No painel de navegação à esquerda, clique em Domain Names.
-
Na página Domain Names, localize o nome de domínio desejado e clique em Manage na coluna Actions.
-
No painel de navegação do domínio, clique em Access Control.
Clique na aba Remote Authentication.
Ative a opção Remote Authentication e configure as definições de autenticação remota conforme orientado na página.
NotaApós ativar a autenticação remota, cada solicitação do usuário deve ser encaminhada ao servidor de autenticação para processamento. Quando o volume de solicitações for alto, considere a carga e o desempenho do servidor de autenticação.
Parâmetro
Descrição
Authentication Server Address
O endereço no qual o servidor de autenticação pode ser acessado externamente. O sistema valida o endereço do servidor de autenticação inserido, incluindo validação de formato e de valor.
Requisitos de formato:
O endereço de autenticação suporta os protocolos HTTP e HTTPS, em um dos seguintes formatos:
http://example.com/auth,https://example.com/auth,http://192.0.2.1/auth, ouhttps://192.0.2.1/auth.
Requisitos de valor:
O valor não pode conter 127.0.0.1 ou localhost. O POP inicia a solicitação de autenticação, portanto o endereço deve ser alcançável a partir do POP.
Request Method
O método de solicitação suportado pelo servidor de autenticação. Valores válidos: GET, HEAD e POST. Valor padrão: GET.
File Types
All: Todos os tipos de arquivo são autenticados.
Specified: Apenas os tipos de arquivo especificados são autenticados.
Ao especificar tipos de arquivo, separe vários tipos com uma barra vertical, por exemplo,
mp4|flv.Os tipos de arquivo diferenciam maiúsculas de minúsculas:
.jpgeJPGsão dois tipos de arquivo diferentes.
URL parameters used for authentication
Parameters to Retain
Controla quais parâmetros da URL da solicitação do usuário são autenticados. Você pode selecionar Retain All Parameters, Retain Specified Parameters ou Delete All URL Parameters.
Ao reter parâmetros específicos, separe vários parâmetros com uma barra vertical, por exemplo,
user|token.Os parâmetros diferenciam maiúsculas de minúsculas:
keyeKEYsão dois parâmetros diferentes.
Custom Parameters
Adiciona parâmetros personalizados à URL da solicitação que o POP CDN encaminha para o servidor de autenticação. Você pode definir os parâmetros e seus valores, ou usar as variáveis predefinidas no console CDN.
Ao definir parâmetros e seus valores, os seguintes requisitos se aplicam:
separe vários parâmetros com uma barra vertical, por exemplo,
token=$arg_token|vendor=ali_cdn;os valores dos parâmetros diferenciam maiúsculas de minúsculas, o que significa que
keyeKEYsão dois valores de parâmetro diferentes.
Ao usar variáveis predefinidas, você pode extrair o valor de uma variável e adicioná-lo à solicitação que o CDN encaminha para o servidor de autenticação.
Por exemplo, se você selecionar a variável
$http_host,host=$http_hosté adicionado à URL da solicitação do usuário, onde host indica o valor do host no header da solicitação do usuário. Para uma descrição dos nomes de variáveis e seus significados, consulte Variáveis.
Request headers used for authentication
Request Headers to Retain
Controla quais headers da solicitação do usuário são autenticados. Você pode selecionar Retain All Parameters ou Retain Specified Parameters.
Ao reter headers de solicitação específicos, separe vários headers com uma barra vertical, por exemplo,
user_agent|referer|cookies.Os headers de solicitação não diferenciam maiúsculas de minúsculas, o que significa que
http_remote_addreHTTP_Remote_Addrsão iguais.
NotaAo selecionar Retain All Parameters, o POP CDN exclui o header HOST por padrão. O header HOST presente na solicitação de autenticação que o POP CDN encaminha para o servidor de autenticação é o nome de domínio acelerado, o que pode impedir o servidor de autenticação de reconhecer a solicitação e causar o retorno do código de status 404 e a falha da autenticação. Para reter o header HOST, use Retain Specified Parameters ou Custom Parameters.
Custom Parameters
Adiciona parâmetros personalizados ao header da solicitação que o POP CDN encaminha para o servidor de autenticação. Você pode definir os parâmetros e seus valores, ou usar as variáveis predefinidas no console CDN.
Ao definir parâmetros e seus valores, os seguintes requisitos se aplicam:
separe vários headers de solicitação com uma barra vertical, por exemplo,
User-Agent=$http_user_agent|vendor=ali_cdn.Os headers de solicitação não diferenciam maiúsculas de minúsculas, o que significa que
http_remote_addreHTTP_Remote_Addrsão iguais.
Ao usar variáveis predefinidas, você pode extrair o valor de uma variável e adicioná-lo à solicitação que o CDN encaminha para o servidor de autenticação.
Por exemplo, se você selecionar a variável
$http_host,host=$http_hosté adicionado à URL da solicitação do usuário, onde host indica o valor do host no header da solicitação do usuário. Para uma descrição dos nomes de variáveis e seus significados, consulte Variáveis.
HTTP Status Code to Return
Passes Authentication
Os códigos de status HTTP que o servidor de autenticação retorna ao CDN quando a autenticação é bem-sucedida. Você pode configurar vários códigos de status e separá-los por vírgulas (,). Exemplo: Se você definir o código de status de sucesso de autenticação como
200,206, a autenticação será bem-sucedida quando o servidor de autenticação retornar200ou206. Para códigos de status que não são nem de sucesso nem de falha, consulte Whether to allow other status codes nesta tabela.Fails Authentication
Os códigos de status HTTP que o servidor de autenticação retorna ao CDN quando a autenticação falha. Você pode configurar vários códigos de status e separá-los por vírgulas (,). Exemplo: Se você definir o código de status de falha de autenticação como
400,403, a autenticação falhará quando o servidor de autenticação retornar400ou403. Para códigos de status que não são nem de sucesso nem de falha, consulte Whether to allow other status codes nesta tabela.Whether to allow other status codes
Determina como o POP CDN trata uma solicitação do usuário quando o código de status retornado pelo servidor de autenticação não é nem de sucesso nem de falha. Yes: Para evitar que todas as solicitações do usuário sejam bloqueadas por uma exceção, o POP CDN permite a solicitação do usuário. Por exemplo, se o código de status de sucesso de autenticação estiver definido como 200 e o servidor de autenticação retornar 201, a solicitação do usuário será permitida. Se o código de status de falha de autenticação estiver definido como 403 e o servidor de autenticação retornar 404, a solicitação do usuário será permitida. No: O POP CDN rejeita a solicitação do usuário.
Ação que o CDN executa após a falha de autenticação
Custom HTTP Status Code
O código de status que o POP CDN retorna ao usuário quando uma solicitação falha na autenticação.
Por exemplo, se você definir o código de status de resposta personalizado como 403, o POP CDN retorna 403 ao usuário quando uma solicitação falha na autenticação.
Authentication timeout settings
Timeout
O período medido desde o momento em que o POP CDN inicia uma solicitação de autenticação até o momento em que o POP CDN recebe o resultado retornado pelo servidor de autenticação. Unidade: milissegundos. Valor máximo: 3000.
Action After Timeout
Como o CDN trata uma solicitação do usuário após o tempo limite da troca de dados entre o CDN e o servidor de autenticação. Você pode selecionar Pass ou Reject.
Pass: Se a autenticação atingir o tempo limite, o CDN permite a solicitação do usuário.
Reject: Se a autenticação atingir o tempo limite, o CDN rejeita a solicitação do usuário e retorna o Custom HTTP Status Code configurado ao usuário.
Clique em OK para concluir a configuração.
Após configurar o recurso de autenticação remota com sucesso, você pode modificar a configuração atual ou desativar a autenticação remota na aba Remote Authentication. Desative a autenticação remota para parar de encaminhar as solicitações do usuário ao servidor de autenticação.
Variáveis
Ao adicionar parâmetros personalizados, você pode usar diretamente as variáveis predefinidas no console CDN. A tabela a seguir descreve os nomes das variáveis e seus significados.
Nome da variável | Significado da variável |
$http_host | O valor de Host no header da solicitação. |
$http_user_agent | O valor de User-Agent no header da solicitação. |
$http_referer | O valor de Referer no header da solicitação. |
$http_content_type | O valor de Content-Type no header da solicitação. |
$http_x_forward_for | O valor de X-Forwarded-For no header da solicitação. |
$remote_addr | As informações de IP do cliente da solicitação. |
$scheme | O tipo de protocolo da solicitação. |
$server_protocol | A versão do protocolo da solicitação. |
$uri | O URI original da solicitação. |
$args | A string de consulta da solicitação, sem incluir o ponto de interrogação (?). |
$request_method | O método da solicitação. |
$request_uri | O conteúdo de uri+'?'+args. |