Help > Chat Room > General > Integración de inicio de sesión único

Integración de inicio de sesión único

Puede utilizar la API de inicio de sesión único (SSO) para registrar automáticamente a sus visitantes en la sala de chat. Esto puede ser útil si tiene un área de inicio de sesión independiente en su sitio web y no desea que sus visitantes inicien sesión dos veces.

La API SSO le permite enviar una solicitud HTTP desde su aplicación para iniciar sesión o salir de su sala de chat. La API devuelve un token, que luego se utiliza en una pequeña etiqueta IMG en la página siguiente para almacenar las cookies del navegador necesarias.

Si estás usando PHP, te recomendamos que utilices nuestro Biblioteca SSO. Contiene un archivo con todo el código de biblioteca que necesitará y otros archivos con uso de ejemplo.

Si está utilizando WordPress para su sitio web, tenemos un plugin WordPress que integra automáticamente el proceso de inicio de sesión y registro.

Siga las instrucciones siguientes para integrar la API SSO en su sitio web.

Obtener la clave de la API

La clave API se pasa como un parámetro en las llamadas a la API para verificar que eres un usuario autorizado de la API de la sala de chat. Su clave de API es como una contraseña para su cuenta y debe mantenerse privada y segura.

Puede obtener la clave API de la sala de chat de la cuenta de Website Toolbox siguiendo las instrucciones que se indican a continuación:

  1. Inicie sesión en su cuenta de la cuenta de Website Toolbox.
  2. Haga clic en el vínculo Configuración.
  3. Copie la clave de API mencionada junto a la opción de clave de API.

Realizar la solicitud para generar token de acceso

En la secuencia de comandos de inicio de sesión de su sitio web, realice una solicitud HTTP a la dirección URL de inicio de sesión de la API de SSO:

http://CLIENT.discussionchatroom.com/sso/token/generate?apikey=APIKEY&username=USERNAME&email=EMAIL&avatarUrl=AVATARURL&password=PASSWORD

Sustituya APIKEY por la clave de API secreta.

Reemplace USERNAME por el nombre de usuario del usuario que va a iniciar sesión.

Sustituya EMAIL por el identificador de correo electrónico del usuario que va a iniciar sesión.

Reemplace AVATARURL por la URL de la imagen de perfil del usuario. Esto es opcional. De lo contrario, el usuario siempre puede establecer su avatar en la propia sala de chat.

Reemplace PASSWORD por la contraseña no cifrada del usuario que va a iniciar sesión.

El nombre de usuario y la contraseña son parámetros opcionales que sólo se utilizarán si es necesario crear la cuenta porque aún no existe. Si la cuenta se crea sin contraseña, el usuario no podrá iniciar sesión directamente en la sala de chat a menos que primero restablezca su contraseña en la página de inicio de sesión. El inicio de sesión SSO funcionaría sin problemas incluso sin que la cuenta del usuario tuviera una contraseña.

Analizar la respuesta para recuperar el token de acceso

Analizar la respuesta JSON de la solicitud enviada a generar token de acceso para recuperar el token de autenticación, es decir, “access_token”. La respuesta de JSON será similar a la siguiente:

{
  "success" : true,
  "message" : "This is success or failure message.",
  "access_token" : "88SngRlfrqL"
}

éxito: corresponde al estado de la solicitud. Es cierto, si el token de autenticación se genera correctamente. De lo contrario es falso.

mensaje: es un mensaje compartido en la respuesta. Es más útil para la respuesta a errores.

access_token: es el token de acceso generado para el usuario después de la autenticación correcta. Este token caducará en 60 minutos para garantizar la seguridad.

Solicitud de inicio de sesión en la sala de chat

En su sitio web, agregue la siguiente etiqueta HTML IMG a su página de destino “iniciar sesión correctamente”:

<img border="0" width="1" height="1" alt="" src= "//CLIENT.discussionchatroom.com/sso/token/login?access_token=ACCESS_TOKEN&rememberMe=REMEMBERME" >

Reemplace ACCESS_TOKEN por access_token, recuperado en el paso Analizar la respuesta para recuperar el token de acceso>..

Sustituya REMBERME por el valor 0 o 1. Para que el navegador recuerde la información de inicio de sesión del usuario incluso después de cerrar el navegador, reemplace REMEMBERME por 1; de lo contrario, sustitúyalo por 0 para borrar la información de inicio de sesión una vez cerrado el navegador.

La ventana del navegador que carga la etiqueta IMG se registrará en la sala de chat como el usuario con el nombre de usuario proporcionado mientras realiza la solicitud a generar token de acceso.

El navegador Safari incluye una política conservadora de cookies que limita la escritura de cookies a sólo las páginas elegidas (“navegadas a”) por el usuario. Esto impide que la cookie de inicio de sesión del foro se establezca en la página de inicio de “inicio de sesión correcto”. Por lo tanto, la única manera de hacer que Single Sign On funcione en el navegador Safari es también pasar el token de autenticación en el enlace de su sala de chat en su sitio web. Por ejemplo:

<a href="http://CLIENT.discussionchatroom.com/?access_token=ACCESS_TOKEN&rememberMe=REMEMBERME">Chat Room</a>

Cerrar sesión en la sala de chat

En caso de que el usuario desee cerrar sesión en la sala de chat o cuando el usuario cierre la sesión en el sitio web, agregue la siguiente etiqueta HTML IMG a la página de inicio de “cierre la sesión correctamente”:

<img border="0" width="1" height="1" alt="" src="//CLIENT.discussionchatroom.com/sso/token/logout?access_token=ACCESS_TOKEN" >

Reemplace ACCESS_TOKEN por access_token, recuperado en el paso Analizar la respuesta para recuperar el token de acceso.

Si no tiene el token de autenticación que se devolvió durante el inicio de sesión, se puede recuperar o regenerar (si ha caducado) realizando la solicitud a generar token de acceso API.

Configuración de URL

Puede configurar las URL de su sitio web siguiendo las instrucciones siguientes:

  1. Inicie sesión en su cuenta de la cuenta de Website Toolbox.
  2. Haga clic en el vínculo Configuración.
  3. En la sección “Inicio de sesión único”, especifique las URL de su sitio web para las siguientes páginas:
    • Página de inicio de sesión: especifique la dirección de la página de inicio de sesión de su sitio web para asegurarse de que todos los inicios de sesión de la sala de chat se producen mediante el formulario de inicio de sesión de su sitio web.
    • Página de cierre de sesión: especifique la dirección de la página de cierre de sesión de su sitio web para asegurarse de que se muestra a los usuarios la página de cierre de sesión de su sitio web una vez que han cerrado la sesión en la sala de chat.
    • Página de registro: Especifique la dirección de la página de registro de su sitio web para asegurarse de que los usuarios se muestran la página de registro de su sitio web al hacer clic en el enlace “Crear cuenta” en la página de inicio de sesión de la sala de chat.

Registrar un usuario en la sala de chat

Para registrar un usuario en la sala de chat, realice una solicitud HTTP a la URL de registro de usuario de la API SSO:

http://CLIENT.discussionchatroom.com/sso/user/register?apikey=APIKEY&username=USERNAME&email=EMAIL&password=PASSWORD&avatarUrl=AVATARURL

Sustituya APIKEY por la clave de API secreta.

Sustituya USERNAME por el nombre de usuario del usuario que se va a registrar.

Reemplace EMAIL con el ID de correo electrónico del usuario que se va a registrar.

Sustituya PASSWORD por la contraseña no cifrada del usuario que se va a registrar. Se trata de un parámetro opcional. En los casos en que se crea una cuenta sin contraseña, el usuario no podrá iniciar sesión directamente en la sala de chat a menos que primero restablezca su contraseña en la página de inicio de sesión. El inicio de sesión SSO funcionaría sin problemas incluso sin que la cuenta del usuario tuviera una contraseña.

¿Desea reemplazar AVATARURL por usuario registrado? URL de la imagen del perfil. Esto es opcional.

El envío de una solicitud de registro es opcional, ya que las cuentas se crearán automáticamente si aún no existen durante un solicitud de inicio de sesión único.

La respuesta JSON también devolverá un token de acceso que se puede utilizar para iniciar sesión en el usuario. Siga los pasos de Analizar la respuesta para recuperar el token de acceso y Solicitud de inicio de sesión en la sala de chat para iniciar sesión en el usuario recién registrado.

Eliminar un usuario

Para eliminar usuarios de la sala de chat, realice una solicitud HTTP a la URL de eliminación de usuario de la API SSO:

http://CLIENT.discussionchatroom.com/sso/user/delete?apikey=APIKEY&emails=EMAILS

Sustituya APIKEY por la clave de API secreta.

Sustituya EMAILS por las direcciones de correo electrónico de los usuarios que se van a eliminar. Puede contener una sola dirección de correo electrónico o varias direcciones de correo electrónico separadas por comas.

Editar detalles de usuario

Para editar los detalles del usuario de la sala de chat, realice una solicitud HTTP a la API de SSO editar la URL del usuario:

http://CLIENT.discussionchatroom.com/sso/user/edit?apikey=APIKEY&user=USER&username=NEWUSERNAME&email=NEWEMAIL&password=NEWPASSWORD&avatarUrl=NEWAVATARURL

Sustituya APIKEY por la clave de API secreta.

Reemplace USER por la dirección de correo electrónico actual del usuario.

Reemplace NEWUSERNAME por el nuevo nombre de usuario que debe establecerse.

Sustituya NEWEMAIL por el nuevo correo electrónico que debe configurarse.

Sustituya NEWPASSWORD por la nueva contraseña que debe establecerse.

Reemplace NEWAVATARURL por la nueva URL de avatar que debe establecerse.

Los parámetros apikey y user son campos obligatorios. Los demás campos son opcionales. No debe agregar parámetros en la dirección URL cuyo valor no debe actualizarse para el usuario. El valor de “nombre de usuario” y “correo electrónico” no se actualizará si está en blanco.

Notas importantes

  • ¿Necesita ayuda? Nuestros desarrolladores pueden configurar la integración de Single Sign On en su sitio web por solo $149.Contáctenos
  • Para acceder a la sala de chat, debe haber un enlace a la sala de chat en su página como:

    <a href=”http://CLIENT.discussionchatroom.com/”>Launch chat room</a>

  • El CLIENTE debe ser reemplazado por el nombre de usuario de la sala de chat del Website Toolbox.
  • Las respuestas se pueden analizar con fines de depuración. La respuesta de JSON será similar a esto.
  • La cadena de consulta debe estar codificada en URL.


If you still need help, please contact us.