En este momento, estoy configurando una API, que se utilizará en el lado del cliente para configurar un sitio de directorio. Me pregunto qué pasos adicionales debo seguir para evitar que las personas obtengan acceso de escritura a los datos.
Algunas notas:
- La API / base de datos no tiene información privada. Toda la información está disponible y ninguna es PII, etc. No sería un problema para mí si alguien leyera todos los datos.
- Actualmente, la API es una aplicación de Sinatra y tiene métodos de escritura para que pueda agregar datos, protegidos por HTTP Auth.
- Se alojará en Heroku y se servirá solo a través de HTTPS.
- Los datos no cambiarán con frecuencia.
- Se realizará una copia de seguridad de los datos de forma regular, por lo que incluso un robo destructivo no sería lo peor del mundo.
Mis preguntas:
- ¿Hay áreas específicas que debería leer sobre seguridad en esta situación?
- ¿Movería los métodos de escritura de la API (y el administrador) a una aplicación completamente diferente y luego simplemente sincronizar la base de datos manejará la mayoría de los problemas de seguridad?
- ¿Es HTTP Auth suficientemente seguro con un nombre de usuario y contraseña largos o hay un método mejor que HTTP Auth para autorizarme en el administrador?
(Nota: Busqué preguntas relacionadas y encontré esto: ¿Es BASIC-Auth seguro si se realiza a través de HTTPS? pero realmente no está claro si hay una mejor opción o método que no genere aún más implicaciones de seguridad)
- ¿Alguna otra sugerencia o pensamiento?
Actualmente estoy un poco fuera de mi elemento y quiero que este proyecto se envíe, en lugar de demorarme demasiado. Estoy seguro de que no hay un reemplazo para la capacitación adecuada en seguridad de aplicaciones, pero espero que debido a la naturaleza pública de los datos, puedo ignorar la mayoría de las situaciones de seguridad para comenzar y pasar más tiempo aprendiendo sobre ellas más adelante.
Saludos, Anders