Cómo asegurarse de que su clave API no pueda copiarse y usarse

1

Una cosa con la que a menudo me cuesta trabajo al desarrollar mis API es la autenticación. No tuve muchos problemas con esto cuando los estaba creando para un solo sitio web y pude implementar el siguiente flujo:

  1. El servidor crea una sesión a petición
  2. Un campo de entrada oculto llamado 'accessToken' obtiene el valor de esta sesión
  3. Tras una consulta a la API, envía el campo oculto 'accessToken'
  4. Si coinciden, la solicitud se autentica

Este método parecía bastante infalible ya que con cada nueva solicitud al sitio, se validó un nuevo accessToken.

Ahora he pasado a desarrollar aplicaciones que se nutren de la misma API que mi sitio web y me está costando mucho más entender la autenticación. Ahora que tengo una aplicación, no puedo simplemente enviar el valor de una sesión a la aplicación como lo haría con mi sitio web basado en PHP. Para obtener simples solicitudes de datos públicos, no se requeriría autenticación, pero cuando creo una cuenta de usuario, modifico esa cuenta de usuarios, etc ... Me gustaría asegurarme de que la solicitud proviene de la fuente correcta, no de alguien que simplemente tomó la clave de autenticación y está ejecutando la solicitud en cartero o curl.

Cualquier idea sobre cómo podría autenticarme adecuadamente sería genial, este es un concepto con el que he luchado masivamente durante un tiempo y que necesito al menos entenderlo.

    
pregunta Joe Scotto 23.08.2018 - 19:37
fuente

0 respuestas

Lea otras preguntas en las etiquetas