Como enviar uma conta por usar os serviços da API do Yandex Maps para um vizinho ou por que um gigante de TI precisa de controle de qualidade

Desde 10 de junho de 2019 (e tecnicamente desde novembro de 2019 ), o Yandex parou de oferecer suporte ao uso anônimo dos serviços JS API e HTTP Geocoder - solicitações de API tarifadas (pesquisa, geocodificação, panoramas etc.) pararam de funcionar. Mas a Yandex não forneceu cobrança e rastreamento adequados de solicitações. Se for interessante como enviar a conta de geocodificação aos gigantes do Runet (os parceiros listados na página inicial do serviço ), bem como como as solicitações de rastreamento são feitas "sabiamente", peço um gato.

Por que este artigo apareceu
Eu não teria escrito este post se o respeitado valshavel não tivesse rejeitado meu comentário no artigo "Como implementamos o WebAssembly no Yandex.Maps e por que deixamos o JavaScript" . A pergunta foi feita "por quê".
Escrever o suporte técnico do Yandex Maps - a partir da experiência de mais de 10 anos - não é eficaz, a sensação de que há apenas um desenvolvedor que estava puxando todo o projeto. De fato, em vez do Sberbank, uma parte de ouro tinha que ser dada a esse desenvolvedor e mais alguns por cento dos comuns.

"Como funciona" com os mapas da API JS


A empresa ou desenvolvedor está registrado na conta pessoal dos desenvolvedores Yandex. E cria uma chave (semelhante a um UUID). A chave não possui configurações (Domínio, limites etc.) e serve apenas para separar a tarifa.

Na página em que as funções de mapa são necessárias, um script JS e uma chave de API são inseridos : (os URLs da versão "paga" podem ser diferentes).

<head> <script src="https://api-maps.yandex.ru/2.1/?apikey= API-&lang=ru_RU" type="text/javascript"> </script> </head> 

Você já reparou? Não? Assista seus dedos:


  1. A chave é pública. (ALLO! O que é o faturamento em uma chave de API pública?).
  2. Não há configurações na chave (ligações a um domínio, serviço, limites).
  3. Qualquer pessoa pode pegar sua chave e usá-la para qualquer fim (isso não é proibido por lei, você mesmo a publica em sua página e o hash aleatório não está sujeito a direitos autorais).

Além disso, o artigo não pôde ser escrito. Mas somos a favor e para o nosso saque, dado que ao colocar essa chave - ela é gasta por terceiros.

Vamos pensar no que precisa ser feito com o pai (não biológico, mas ainda assim) Runet (e aquele herói-desenvolvedor) para que as crianças não sofram:


  1. Um cartão - uma chave (https://www.mapbox.com/).
    A chave refere-se a um cartão específico. Nas configurações principais, os domínios permitidos são registrados (não se esqueça do curinga). Por chave, o geocodificação por meio da API HTTP é proibido.
  2. Limites de consulta.
    Não quero ganhar dinheiro por causa de intrusos.
  3. Autorização de chave / chave privada.
    Quero uma chave para meus serviços que usam geocodificação e uma cobrança separada para eles. Não quero que June entre no LK e leve minha chave para um cartão público.

Enquanto tudo isso está faltando - qualquer um pode pegar sua chave e fazer um geocódigo de prazer.

Tudo de bom e cuide das suas chaves =)

Source: https://habr.com/ru/post/pt476754/


All Articles