2011-11-12 19 views
13

Estoy construyendo un nuevo sitio web donde un usuario puede iniciar sesión. Veo tres opciones posibles:Mejor implementación de inicio de sesión en PHP/MySQL/Apache

1. clásica modalidad entrada:

<form action="/login.php" method="POST"> 

</form> 

y el botón de envío va a login.php y valida y redirige si el éxito

2. Tipo ajax entrada:

Igual que el anterior, pero haga una llamada ajax en su lugar y luego redirecciona el javascript.

3. entrada iframe:

La misma idea que stackoverflow/openid

¿Cuál es la forma más segura y mejor manera de hacer esto?

Respuesta

23

bien, en mi opinión, las opciones 1 & 2 deben usar la publicación, y en su código debe asegurarse de que la solicitud se publique. también debe agregar en la lógica de otra sesión contra la suplantación si desea que la aplicación sea súper segura, pero esto es preferencial para el desarrollador y la aplicación. Encuentro iframes como el mal y muchos hackers usan iframes para hackear cuentas de usuarios desconocidos. openid es una forma confiable de iniciar sesión y cada vez es más adoptada, al igual que la versión de facebook de openid. Sé que utilizan el método de iframe, pero la verificación se duplica y creo que se requiere https para implementar este tipo de inicios de sesión.

De nuevo, todo esto es solo mi opinión y depende principalmente del diseño del desarrollador y de las necesidades/requisitos de la aplicación.

espero que esto ayude :)

+0

¿qué quieres decir con spoofing? –

+1

No estoy seguro de si está utilizando un marco o código personalizado, pero la mayoría de los marcos lo tienen integrado ahora, pero básicamente esto, que se publicó anteriormente como otro tipo de tema relacionado: Prevención de la fijación de sesión Regenerar un nuevo session_id cada X número de solicitudes para reducir la cantidad de tiempo que un atacante tiene para robar la identificación. Identificar de forma única al cliente Utilice la IP y/o el User-Agent para identificar de manera única al cliente y verificar ese valor en cada carga de página con respecto a las almacenadas en la sesión. Esta es realmente la única opción que tiene para identificar al cliente de manera única. –

+0

aquí hay un buen artículo para leer sobre la suplantación de identidad: [enlace] (http://www.nyphp.org/PHundamentals/6_Spoofed-Form-Submissions) –

Cuestiones relacionadas