Estoy pensando en los formularios de inicio de sesión en particular:¿Deshabilitar la protección CSRF a veces justificado?
Por su naturaleza, los formularios de inicio de sesión bloquean la entrada arbitraria: sin un nombre de usuario y contraseña válidos, solo se los devuelve. ¿Hay alguna razón por la cual estos incluso necesiten la adición de authenticity_token
o una protección de falsificación de solicitud entre sitios similar?
Tengo curiosidad por si formularios de ingreso son un ejemplo en el CSRF incluso podría ser generalmente indeseable:
Dado un cliente anónimo, que se debe permitir que el primer punto de contacto con un sitio es publicar las credenciales de inicio de sesión válidas . CSRF evita esta interacción directa al requerir primero que el cliente realice un GET para establecer una cookie de sesión anónima, que se usa como base para su autenticidad_token. El token se debe volver a publicar con las credenciales de inicio de sesión. El paso inicial adicional parece inútil cuando el objetivo real aquí es autenticar a un usuario que llega sin una sesión y está tratando de dar sus credenciales.
¿Me falta alguna consideración de seguridad en este escenario?
Gracias por el enlace, eso es una buena lectura. Creo que una API de servicio web es un lugar razonable donde el cliente no debería tener que OBTENER primero la página de inicio de sesión, antes de enviar las credenciales. –
Si se trata de un servicio web y solo está enviando un token para futuras solicitudes en la respuesta (no se establece una cookie) eso no debería ser un problema, ya que no causa ningún efecto secundario para el usuario. – Gelatin