Pregunta

En mi web he implementado el inicio de sesión usando OpenID (basado en StackOverflow).

Pero me parece que no puede cerrar la sesión.
En mi anfitrión me puedo cerrar la sesión, pero cuando los intentos usuario conectarse de nuevo (especialmente con google) la autenticación atraviesa sin requerir que el usuario escriba el nombre y la contraseña.

¿Cómo puedo indicar al proveedor de OpenID que un usuario ya no se registra en el sitio?

¿Fue útil?

Solución

OpenID autentica a los usuarios a su sitio, cuando a continuación, inicia una sesión en su sitio. Destruyes o invalidar la sesión de su sitio separado de la sesión del usuario con su proveedor de OpenID.

El usuario visita joewidgets.com> usuario inicia sesión con OpenID (con una sesión nueva o existente proveedor)> ... usuario hace clic en Cerrar sesión> joewidgets.com destruye / invalida la sesión.

Si el usuario tiene su proveedor de OpenID mantenerlos iniciada la sesión, y su sistema de forma automática cheques, a continuación, se creará una nueva sesión local. (Un) Afortunadamente, usted no / no puede preocuparse por lo que el usuario hace o deja de hacer en el su proveedor, que es un profesional / acondicionado de OpenID.

Hay un argumento en lápiz labial Social que pide " Single Sign-Out", pero OpenID no proporciona actualmente esta función .

Otros consejos

Esto se llama cierre de sesión único o Single Sign-Out, que OpenID no soporta. En mi opinión, sin cerrar la sesión de SSO es un gran agujero de seguridad. Cierre de sesión de un solo sitio no significa mucho si los demás sólo pueden entrar con unos pocos clics.

Por ahora, tenemos que recordar el proveedor. Si se trata de alguien que sabemos, activar el proceso de cierre de sesión para ellos. Para Google, la URL es,

https://www.google.com/accounts/Logout

El flujo de cierre de sesión es feo, pero hace el trabajo.

Esto es generalmente algo manejado por el proveedor de OpenID - por ejemplo, si los restos usuario ha iniciado sesión en su cuenta de Google y marcó la casilla "recordar" la autorización de OpenID para su sitio en particular, entonces el proveedor de forma transparente a una sesión y redirección de nuevo sin mostrar el indicador de conexión.

"Es una característica no es un error"

El proveedor de id puede optar por mantener el usuario autorizado para el proveedor a través de cookies y, además, puede optar por no volver a Solicitar al usuario acerca de compartir la misma información que fue compartida previamente (con un símbolo). Así que cuando el usuario en el sitio A, pidió ser autorizado a través del sitio B y consiguió redirigido, el sitio B preguntó por primera vez para el usuario para que él o ella sí autenticar. Entonces preguntó el sitio B si se debe comunicar cualquier información (y, a veces, que la información) con el sitio A. En este punto también se le preguntará si desea habitualmente para compartir automáticamente esta misma información en el futuro. Algunos proveedores asumirán sí, algunos no, algunos se le pida. El sitio B a continuación, vuelve a dirigir al sitio y comparte la información, que está ahora conectado.

Si hace del sitio un segundo cambio de dirección al sitio B para solicitar un inicio de sesión, el sitio B fuerzas 1) ¿Ya tiene una cookie que autentifica el usuario actual del sitio B. 2) Ya tiene un registro de qué información es aceptable para compartir con el sitio B. 3) Compartir automáticamente esta información a través de una redirección sin hacer una pausa para pedir al usuario en absoluto.

Esta es una característica centra en torno a la conveniencia.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top