Pergunta

Estou interessado em saber como funciona um baseados em URL chave de API de restrição, como o usado pelo Google para proteger o seu serviço Google Maps.

Pelo que eu entendo a partir deste artigo " restringir o acesso ao Ajax Serviços ", existem duas partes envolvidas: primeiro, onde o serviço cria uma chave específica para um dado domínio, utilizando uma função hash unidireccional; e segundo, onde o serviço valida a chave com base no cabeçalho Referer.

Enquanto o artigo é bastante explicativo, eu ainda tenho um problema tentando entender o quão seguro é o método de validação. Quer dizer, se a chave está marcada apenas contra o referer, não é isso muito fácil de forja? Estou a pensar que um simples "127.0.0.1 www.mydomain.com" no arquivo de hosts será suficiente para enganar a validação, e acho que o referer é www.mydomain.com.

Eu poderia ter entendido mal algumas coisas e alguns esclarecimentos será apreciado.

Foi útil?

Solução

A secção "Limitações" do artigo que você citar especificamente menciona a possibilidade de spoofing a referência.

A alteração do arquivo host pode realmente ser o suficiente para forjar a sua referência, mas só quando você está acessando o site a partir de seu próprio computador . Isso significa que você pode abusar da licença só ao testar localmente. Isso não é abuso muito interessante.

Para publicar seu aplicativo, você precisa para falsificar a referência no todos navegadores, a menos que você está usando a API de um localmente executar executável, caso em que você está provavelmente em controle total de todos os cabeçalhos.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top