¿Existen problemas de seguridad con el uso de javascript para iniciar sesión y decirle al usuario que ingresó sus datos de inicio de sesión correctamente?

Creo que todo lo que hace Quora en este momento es enviar una solicitud POST XHR que contiene su dirección de correo electrónico después de haberla ingresado en sus servidores. Si coincide con un correo electrónico en su base de datos, devolverán tanto el nombre del usuario con esa dirección de correo electrónico como un enlace al avatar del usuario.

Hay dos posibles problemas con esto que debe tener en cuenta:
1) Es perfectamente seguro enviar credenciales de usuario a su servidor usando JavaScript siempre que la solicitud sea una solicitud POST, e idealmente a través de SSL. Nunca debe enviar credenciales de usuario como una solicitud GET, ya que es probable que se almacenen en todo tipo de registros en los que no desee. Mientras mantiene la solicitud como una solicitud POST XHR, está haciendo efectivamente lo que el navegador estaría haciendo. cuando haces clic en el botón enviar. Tampoco use nunca JSONP para devolver datos personales, ya que esto se puede usar en un ataque XSS.

2) Si bien esto no se refiere a la seguridad, es algo que debe considerar seriamente al usar una técnica como la que usa Quora. Si realiza búsquedas en su base de datos y devuelve resultados basados ​​solo en una dirección de correo electrónico, existe un problema de protección de datos bastante desagradable. Si yo, como spammer, tengo una lista de direcciones de correo electrónico ‘y quiero validar que son reales y obtener el nombre real de la persona que posee esa dirección de correo electrónico, podría crear fácilmente un pequeño script para disparar cientos de solicitudes para validar los correos electrónicos y recuperar los nombres completos de los usuarios. Esto puede parecer inocente al principio, pero si alguien que intenta realizar una estafa de phishing con nombres completos del usuario es masivo.

Entonces, en términos de seguridad: siempre aténgase a las solicitudes POST y nunca use JSONP para datos confidenciales del usuario. Sin embargo, siempre piense en los problemas morales y personales al revelar mucha información sobre sus usuarios.