Vejo essa palavra em quase todos os aplicativos de serviço cruzado atualmente.
O que exatamente é uma chave de API e quais são seus usos?
Além disso, qual é a diferença entre as chaves de API públicas e privadas.
Vejo essa palavra em quase todos os aplicativos de serviço cruzado atualmente.
O que exatamente é uma chave de API e quais são seus usos?
Além disso, qual é a diferença entre as chaves de API públicas e privadas.
Respostas:
Para que "exatamente" uma chave de API é usada, depende muito de quem a emite e para quais serviços ela está sendo usada. Em geral, no entanto, uma chave de API é o nome dado a alguma forma de token secreto que é enviado junto com solicitações de serviço da web (ou semelhantes) para identificar a origem da solicitação. A chave pode ser incluída em algum resumo do conteúdo da solicitação para verificar ainda mais a origem e evitar adulteração dos valores.
Normalmente, se você puder identificar a origem de uma solicitação positivamente, ela atua como uma forma de autenticação, que pode levar ao controle de acesso. Por exemplo, você pode restringir o acesso a certas ações da API com base em quem está executando a solicitação. Para empresas que ganham dinheiro com a venda desses serviços, é também uma forma de rastrear quem está usando o produto para fins de faturamento. Além disso, ao bloquear uma chave, você pode evitar parcialmente o abuso no caso de volumes de solicitação muito altos.
Em geral, se você tiver uma chave de API pública e uma privada, isso sugere que as próprias chaves são um par de chaves pública / privada tradicional usado em alguma forma de criptografia assimétrica ou assinatura digital relacionada. Essas são técnicas mais seguras para identificar positivamente a origem de uma solicitação e, além disso, para proteger o conteúdo da solicitação de espionagem (além de adulteração).
De maneira muito geral:
Uma chave de API simplesmente identifica você.
Se houver uma distinção público / privado, então a chave pública é aquela que você pode distribuir para outras pessoas, para permitir que elas obtenham algum subconjunto de informações sobre você da API. A chave privada é apenas para seu uso e fornece acesso a todos os seus dados.
Parece que muitas pessoas usam chaves de API como solução de segurança. O ponto principal é: nunca trate as chaves de API como secretas , não é. Seja https ou não, quem ler a solicitação poderá ver a chave da API e fazer a chamada que desejar. Uma chave de API deve ser apenas um identificador de 'usuário', pois não é uma solução de segurança completa, mesmo quando usada com SSL.
A melhor descrição está no link de Eugene Osovetsky para: Ao trabalhar com a maioria das APIs, por que elas exigem dois tipos de autenticação, ou seja, uma chave e um segredo? Ou verifique http://nordicapis.com/why-api-keys-are-not-enough/
Uma chave de API é um valor exclusivo atribuído a um usuário desse serviço quando ele é aceito como usuário do serviço.
O serviço mantém todas as chaves emitidas e as verifica a cada solicitação.
Observando a chave fornecida na solicitação, um serviço verifica se é uma chave válida para decidir se concede acesso a um usuário ou não.
Pense nisso desta forma, a "Chave de API pública" é semelhante a um nome de usuário que seu banco de dados está usando como um login para um servidor de verificação. A "Chave de API privada" seria então semelhante à senha. Pelo site / banco de dados usando este método, a segurança é mantida no servidor de verificação / terceiros para autenticar a solicitação de postagem ou edição do seu site / banco de dados.
A string da API é apenas o URL do login para seu site / banco de dados entrar em contato com o servidor de verificação.