Mejores prácticas para asegurar una API de estructura desconocida que pueda provenir del dispositivo o servidor del usuario final [cerrado]

2

Estoy intentando crear una API con una estructura forzada mínima. Los mensajes pueden provenir del dispositivo del usuario final o de un servidor backend. Estoy de acuerdo con abrir API separada para el tráfico de usuarios finales y desde servidores. El cliente son empresas web y móviles que pueden enviar sus datos a la API. (Piense en Google Analytics para sitios web, aplicaciones móviles y eventos de servidores web) ¿Cuál será la mejor práctica para saber que una solicitud http a la API se obtuvo de un cliente de confianza? Si hay algún artículo bueno de esa manera, que lo que sea grande también.

- EDITAR - ¿Cuál será la mejor práctica para autenticar al cliente (no al usuario final)

    
pregunta Gluz 22.10.2014 - 21:13
fuente

2 respuestas

5

Usted no puede confiar en el cliente , nunca.

  • Un usuario malintencionado puede abusar del software legítimo del cliente (suyo o de otra persona)
  • Un atacante puede aplicar ingeniería inversa suficiente de la API para pretender ser un cliente legítimo

En lugar de confiar en el cliente, trabaje para asegurarse de que la entrada del cliente sea confiable.

  • validación de entrada
  • entrada de saneamiento
  • cumplimiento del esquema
  • control de velocidad

Haga estas cosas al final, que usted controla, para brindar seguridad a su sistema. No pierda el tiempo imaginando que puede controlar los puntos finales remotos.

    
respondido por el gowenfawr 22.10.2014 - 21:26
fuente
2

Estoy respondiendo a mis propias preguntas, pero para futuros buscadores, encontré este gran artículo: enlace . Tal vez no expliqué bien mi pregunta, pero esta fue la respuesta que estaba buscando.

- ACTUALIZACIÓN -

Rory Alsop, pidió publicar un resumen. Definitivamente deberías leer la fuente. Pero en caso de que no pueda, adjunto una parte de la captura de pantalla de la solución de la fuente.

    
respondido por el Gluz 23.10.2014 - 06:35
fuente

Lea otras preguntas en las etiquetas