2008-10-28 16 views
18

Estoy trabajando en una página de inicio de sesión único con Shibboleth que se utilizará para una variedad de aplicaciones web. Obviamente, nos gustaría hacer que esta página sea lo más segura y utilizable posible mientras se limitan los efectos de las estafas de phishing.¿Mejores prácticas para páginas de inicio de sesión?

¿Cuáles son las mejores prácticas a tener en cuenta al diseñar una página de inicio de sesión?

Algunas de las preguntas que han surgido en torno a este tema:

  • ¿Es importante que la página de inicio de sesión a buscar siempre la misma en cada pantalla?
  • Por el contrario, ¿sería beneficioso que la página de inicio de sesión tenga un diseño aleatorio?
  • ¿Es mejor que la página de inicio de sesión tenga el mismo aspecto que todas las otras páginas o debería tener su propio diseño único?
  • Si la página de inicio de sesión tiene su propio diseño único, ¿debería incorporar otros elementos constantes del diseño de su sitio (como la navegación global)?
  • ¿Es la página de inicio de sesión un lugar apropiado para proporcionar al usuario contenido adicional (como las últimas noticias)?
  • ¿Hay alguna característica adicional de seguridad que deba incluirse para ayudar a mantener a las personas seguras?
+2

Sólo una opinión personal, no una respuesta real, pero ... Me encantan los formularios de inicio de sesión (no las páginas) que aparecen en el centro de la página y después de escribir su nombre de usuario y contraseña ha iniciado sesión sin dejando la página actual! –

Respuesta

21

Usabilidad señala:

Personalmente odio cuando los sitios ponen el "Olvidó su contraseña" o "nombre de usuario olvidó" o enlaces de "ayuda" entre medio del campo de la contraseña y el botón Iniciar sesión. Como usuario de teclado, no debería tener que marcar TAB sobre ellos para acceder al botón Enviar.

Mejor aún, también capture la tecla Enter en el campo de contraseña para que pueda enviarla automáticamente con la tecla Intro.

7

manteniendo el mismo diseño en su página de inicio de sesión permitirá que sus usuarios intenten iniciar sesión en su página si el cambio de diseño al azar el usuario puede pensar que el sitio se ha movido o está siendo víctima de errores. así que recomendaría mantener las mismas pautas que sus páginas de contenido

5

Otra cosa que "no duh" que todavía veo en una gran cantidad de aplicaciones a las que voy, si las credenciales especificadas no son válidas, no indican cuál es inválido. Simplemente diga algo como "combinación de usuario/contraseña inválida" en lugar de "contraseña no válida" que evitará que las personas de ingeniería social conozcan una base de usuarios que acceda a su sitio.

1

Un consejo útil para las circunstancias que vienen: Puede desactivar el ahorro de contraseña del lado del cliente agregando autocompletar = "off" al campo de contraseña.

que no funciona en todos los navegadores (si no recuerdo, IE 6+ y Firefox 3+)

+0

Para sitios que no me permiten guardar la contraseña, tengo un buen archivo de texto sin formato que contiene mis contraseñas. La función está ahí por una razón, déjame decidir usarla o no, no la desactives solo porque puedes. – tloach

+1

No desea confiar en que sus usuarios guarden algunas de sus contraseñas en texto sin formato (lo mismo que no confío en que algunas empresas almacenen mi contraseña de manera eficiente) :) – Luk

0

Tenga en cuenta que su usuario va a pasar los 10 segundos en esa página en general, realmente no importa lo que parece, siempre que sea obvio dónde colocar su nombre de usuario y contraseña. Aparte de eso, no seas uno de esos sitios que ofrece enviarme mi contraseña si la olvido. Al menos déjame creer que está escondido en un bonito hash salado en algún lugar donde no puedes recuperarlo nunca.

6

No importa lo que diseñe, un Phisher podrá imitarlo. Prevenir el phishing por completo es un problema difícil. Básicamente, deberá tener algún medio para identificar a sus usuarios antes de iniciar sesión. Algunos bancos lo hacen ahora.Ingrese su nombre, y luego le muestran una imagen que usted mismo ha seleccionado, y luego, una vez que está seguro de que es la misma imagen, ingrese su contraseña. Esto puede ser un mayor nivel de complejidad que lo que su sitio requiere.

En el aspecto técnico, Bank Of America logra esto mediante el uso de un objeto compartido local de Flash llamado PassMark. Su navegador envía silenciosamente esta información identificándose al Banco. Si elimina el LSO, no se le mostrará su imagen porque BofA no puede identificarlo. Incluso esto es aún vulnerable a los ataques de hombre en el medio.

3

Parece una obviedad, pero usa HTTPS si la aplicación lo requiere. Diablos, incluso si no lo justifica porque las personas tienden a reutilizar las mismas contraseñas. Puede obtener un certificado SSL barato estos días. Si levantan una contraseña de su sitio, pueden intentarlo en otra parte. Incluso muchos bancos no tienen la página de inicio de sesión en una línea segura. Se publica en una página HTTPS, pero todavía no hay protección de un hombre en el ataque de tipo medio.

Estoy de acuerdo con Omniwombat. El phishing es un problema difícil de resolver y aparentemente imposible de resolver por completo.

+1

HTTP es un protocolo sin estado. Si se publica un formulario en una página segura, los datos pasan por SSL y no están sujetos a man-in-the-middle. Tener una página de inicio de sesión "segura" no significa nada más que recuperarla a través de una conexión segura, y solo te arrulla con una falsa sensación de seguridad. – Duncan

1

Lo mejor que he visto hasta ahora en un intento de detener el phishing es la interfaz de inicio de sesión de un banco. El inicio de sesión se realiza en 3 partes, primero el usuario ingresa su número de cuenta (número de tarjeta de débito, tarjeta de crédito ...), el segundo paso enumerará al azar 1 de las 3 preguntas especificadas por un usuario (por ejemplo: ¿Qué escuela secundaria asistió? para el grado 10), la última parte, si las dos primeras son exitosas, es mostrar una imagen y un texto especificado por el usuario al registrarse, con el campo de contraseña a continuación.

0

@ Joe Lencioni, y todos los demás interesados ​​en Shibboleth

páginas de su sitio debe tener el mismo aspecto general de cada página.

En cuanto a Shibboleth y SSO. Es importante tener en cuenta a qué función está asociada su organización. ¿Es usted un Proveedor de Identidad - IdP (autenticando al usuario y luego enviando la respuesta al SP), o es el Proveedor de Servicios - SP (que otorgará autenticación basada en la respuesta y los atributos enviados por el IdP)

Si usted es un SP, tiene la flexibilidad que desee para vincular a sus usuarios con un IdP para que se registren. Muchos SP crean su propia página WAYF (Where Are You From) que redireccionará al usuario a la página de inicio de sesión del IdP.

Si usted es un IdP, usted debe tener una página de inicio de sesión que le resulta familiar al usuario para que puedan iniciar sesión y luego ser redirigido a un SP con los atributos que son necesarios para el SP para permitir el acceso adecuado.

En lo que respecta a las estafas de phishing, es importante mantener actualizados los metadatos de Shibboleth. Creo que muchas Federaciones recomiendan descargar metadatos cada (1) hora.

Muchas preguntas pueden ser contestadas Shibboleth aquí: https://spaces.internet2.edu/display/SHIB2/Home

la esperanza que esto te ayuda.

2

Piense como un usuario así como como un guardia de seguridad: si usted hace que hagan un captcha cada vez que inicien sesión, se van a poner hartos de ello.

Si está tratando de evitar la denegación de servicio, entonces quizás haga que un captcha aparezca solo después de que haya suficientes intentos de inicio de sesión (¿fallado?) En un determinado período de tiempo.

Considere utilizar NTLM, OpenID o Shibboleth para hacer que el inicio de sesión sea lo más automático posible para la mayoría de los usuarios.

No haga que las personas vayan a una página separada para registrarse. Presumiblemente, tendrá campos de nombre de usuario y contraseña, y un botón de inicio de sesión/envío. Simplemente agregue también un botón "registrarse como nuevo usuario", para que los nuevos usuarios puedan usar los campos de nombre de usuario/contraseña existentes. Si necesita recopilar detalles adicionales para usuarios nuevos, despliegue un formulario (usando DHTML, no una ventana emergente) para recopilarlos.

Cuestiones relacionadas