Compartir a través de


Configurar los ajustes de autenticación

La Plataforma omnicanal para Customer Service ofrece un conjunto de funciones que extienden la potencia de Dynamics 365 Customer Service Enterprise con el que las organizaciones pueden conectarse e interactuar de forma instantánea con sus clientes en distintos canales de mensajería digital. Se necesitan una licencia adicional para acceder a la Plataforma omnicanal para Customer Service. Para más información, consulte las páginas Descripción general de precios de Dynamics 365 Customer Service y Plan de precios de Dynamics 365 Customer Service.

Se aplica a: Dynamics 365 Contact Center - insertado, Dynamics 365 Contact Center -independiente y Dynamics 365 Customer Service

Puede crear la configuración de autenticación para validar un cliente registrado en un dominio y extraer la información basada en las variables de contexto se definen. Puede distinguir a los clientes anónimos de clientes autenticados, y puede crear reglas en función de las variables de contexto.

Por ejemplo, se pueden separar colas independientes para los clientes anónimos y clientes autenticados. Puesto que tiene más información sobre los clientes autenticados, también puede concederles prioridad en función de variables específicas, como valor de carro de la compra o un estado de privilegio.

Después de crear un registro de configuración de autenticación, debe agregarlo a una instancia de canal dentro de la configuración del canal de una secuencia de trabajo para que funcione. La autenticación es compatible con estos canales:

  • Charlar
  • Apple Messages for Business

Un agente recibirá una notificación en la sección Resumen de la conversación sobre si un cliente está autenticado o no. El campo Autenticado se establece en o No en función del estado de autenticación del cliente. Más información en resumen de la conversación

Requisitos previos

Crear un registro de la configuración de autenticación de chat

Puede crear un registro de configuración de autenticación de chat en la aplicación de administrador.

  1. En el mapa del sitio del centro de administración de Customer Service, seleccione Configuración del cliente y seleccione Asistencia al cliente. Aparece la página Configuración de cliente.

  2. En la sección Configuración de autenticación, sleccione Administrar. Aparece la página Configuración de autenticación.

  3. Seleccione Nueva configuración de autenticación y, en la página Agregar configuración de autenticación, facilite los siguientes detalles:

    • Nombre: escriba un nombre para la configuración de la autenticación.

    • Dueño: Acepte el valor predeterminado o cámbielo a un valor requerido.

    • Tipo de autenticación: De forma predeterminada, OAuth 2.0 no se puede editar.

    • Dirección URL de clave pública: especifique la dirección URL de clave pública del dominio. Esta dirección URL se utiliza para validar la información que se recibe del token Web de Notación de objetos JavaScript (JSON, JWT) del dominio en el que se ha registrado un cliente.

    • Función de cliente de JavaScript: especifique la función de cliente de JavaScript para usar en la autenticación. Esta función extrae un token del extremo de token.

      Configurar la configuración de registro de autenticación de chat.

    Para obtener más información sobre cómo encontrar la dirección URL de clave pública y la función de cliente de JavaScript, en Configuración para portales de Power Apps o la sección Configuración para portales personalizados más adelante en este artículo.

  4. Seleccione Guardar.

Crear un registro de configuración de autenticación para chat mediante OAuth 2.0

  1. Realice los pasos del 1 al 3 en Crear un registro de configuración de autenticación para el chat e introduzca los siguientes detalles en la página Agregar configuración de autenticación:

    • Nombre: un nombre para la configuración de la autenticación.
    • Tipo de canal: Chat en directo.
    • Tipo de autenticación: OAuth 2.0
  2. Seleccione Siguiente y en la página Detalles, introduzca la información siguiente:

    • Acción personalizada de token: la referencia del código personalizado para validar los tokens proporcionados por su proveedor de identidad y devolver el ID de usuario del usuario autenticado.
    • URL del token: la URL utilizada para intercambiar su código de autorización por el token pasado a su acción personalizada para adquirir el ID de usuario.
    • URL de redireccionamiento: la URL pasada a la solicitud de código de autorización original, que es un parámetro necesario en las llamadas al punto de conexión de intercambio de tokens.
    • ID de cliente: la ID del cliente pasado al punto de conexión del intercambio de tokens.
    • Secreto de cliente: el secreto autentica que el cliente pasado al punto de conexión del intercambio de tokens.
    • Ámbito: los ámbitos para los cuales el usuario está autorizado por el token adquirido en el flujo.
  3. Guarde los cambios.

Agregar la autenticación al widget de chat

  1. En Centro de administración de Customer Service, edite el widget de chat en la configuración del flujo de trabajo y luego vaya a la pestaña Comportamientos.

  2. En el cuadro Configuración de autenticación, busque y seleccione el registro de autenticación de chat.

Cuando un cliente registrado en un portal abre el widget de chat, la función de cliente de JavaScript pasa el JWT del cliente al servidor. El JWT se descifra y se valida mediante la clave pública y la información se pasa luego al agente de chat en la Plataforma omnicanal para Customer Service. Como administrador, también puede pasar información adicional sobre el cliente registrado en JWT definiendo variables personalizadas de contexto. Las variables de contexto deben definirse exactamente del mismo modo en que se definen en la secuencia de trabajo que está asociada al widget de chat. Más información en Administrar variables de contexto

Configuración para portales de Power Apps

Si va a agregar la autenticación de un widget de chat en un sitio web desarrollado usando los portales de Power Apps, entonces la dirección URL de clave pública y la función de cliente de JavaScript están listas para usar. Debe cargar un certificado personalizado para tener una dirección URL de clave pública válida en los portales de Power Apps.

  • Dirección URL de clave pública: <portal_base_URL>/_services/auth/publickey
  • Función de cliente JavaScript: auth.getAuthenticationToken

Para un portal listo para usar de Power Apps, la función cliente de javascript devuelve un token, que de forma predeterminada tiene el reclamo adecuado para vincular un registro de contacto a la conversación. Este token contiene el sub claim con el identificador de contacto del usuario que ha iniciado sesión. Esta sub claim proporciona un identificador único para que Omnicanal identifique y vincule automáticamente el registro de contacto de su entorno de Dataverse. Obtenga más información en la tabla de la sección siguiente.

Configuración para portales personalizados

Si está agregando una experiencia de chat autenticada a un sitio web personalizado que no está desarrollando usando portales de Power Apps, su equipo de desarrollo web debe seguir los pasos siguientes antes de que su administrador puede configurar el chat autenticado:

  1. Genere un par de claves pública/privada en sus servidores de autenticación. Las claves deben generarse mediante el algoritmo RSA256.

    El siguiente código de ejemplo es para generar pares claves privadas o públicas.

    openssl genpkey -algorithm RSA -out private_key.pem -pkeyopt rsa_keygen_bits:2048
    openssl rsa -pubout -in private_key.pem -out public_key.pem
    
  2. Crea un punto de conexión que devolverá sus claves públicas. Los servidores omnicanal utilizarán las claves públicas para validar el token JWT pasado como parte de la autorización de la solicitud de chat. La URL de este extremo se ingresará en la aplicación Administración al crear un registro de configuración de autenticación.

    El extremo de su clave pública se verá similar a este ejemplo:

      -----BEGIN PUBLIC KEY----- 
      NIIBIjANBgkqhkiG9w0BAQEFABCOPQ8AMIIBCgKCAQEAn+BjbrY5yhSpLjcV3seP 
      mNvAvtQ/zLwkjCbpc8c0xVUOzEdH8tq4fPi/X5P/Uf2CJomWjdOf1wffmOZjFasx 
      ELG+poTqy5uX2dNhH6lOMUsV31QGG36skLivpLBCSK6lWlzsV6WGkb/m8r86aGzp 
      jtNhw8yvoTYB4updDrJ8pC+tx4EWK0WEmKn1GsW6TjUtxJjcTLI1puSbmcGHbkSi 
      RSbWkKPqaEVFALprw+W5ZCung5QX3KOkY/rJd+2JwULm7okyQCQaF7qwa5i9Uf65 
      7M6ZL4vsDevq7E/v3tf6qxpSSHzt4XspXVQty9QHhqDqBEY3PfI4L2JjgIGuPhfS 
      YQIDAQAB 
      -----END PUBLIC KEY-----   
    
    

Si necesita utilizar varias claves públicas, el extremo de su clave pública puede devolver un conjunto de pares <kid, publickey>, donde kid hace referencia al Id. de clave. Los pares de ID de clave deben ser únicos. El kid debe pasar el token JWT en el paso 4. Si está utilizando varias claves, el extremo de su clave pública debería devolver algo parecido al ejemplo siguiente. La clave pública está codificada en base64

 [
      { 
          "kid": "qWO4EaKT1xRO7JC/oqALz6DCVr41B/qL0Hqp4in7hu4=",
          "publicKey": LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0NCk1JSUJJakFOQmdrcWhraUc5dzBCQVFFRkFBT0NBUThBTUlJQkNnS0NBUUVBbjFLdXhtSEh3V3hjelZSWGRBVmMNCnBEaFZwa0FnYklhTGZBUWc1bFpvemZqc29vcWRGWkl0VlFMdmRERWFVeDNqTytrTkxZM0JFRnBYVDZTN3ZNZCsNCnZoM2hpMDNsQ1dINnNCTWtaSWtuUUliMnFpekFsT0diU2EvK3JrUElnYnpXQjRpT1QyWVhyOVB4bXR5d2o4WUINCnYram55VU5DSzMyZy9FYWsvM0k3YW1vZ2pJY0JISjNFTjVuQWJBMExVVnJwMW5DODJmeEVPOHNJTzNYdjlWNVUNCnc5QnVTVVFRSmtMejNQYVI5WTdRZUEyNW5LUGtqTXZ2Y0UxVU5oeVpIYlNLbmorSitkZmFjb1hsSGtyMEdGTXYNCldkSDZqR0pWcGNQMHBkNjFOa3JKa2c0aStheThwS2ZqdjNUOHN3NWdaVHFweFFaaitVRWxqaVM0SHRPTlhkNlENCnZRSURBUUFCDQotLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0NCg==",
          "expiry": 1608495423
      },
 {
          "kid": "qWO4EaKT1xRO7JC/oqALz6DCVr41B/qL0Hqp__valid=",
          "publicKey": "LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0NCk1JSUJJakFOQmdrcWhraUc5dzBCQVFFRkFBT0NBUThBTUlJQkNnS0NBUUVBbjFLdXhtSEh3V3hjelZSWGRBVmMNCnBEaFZwa0FnYklhTGZBUWc1bFpvemZqc29vcWRGWkl0VlFMdmRERWFVeDNqTytrTkxZM0JFRnBYVDZTN3ZNZCsNCnZoM2hpMDNsQ1dINnNCTWtaSWtuUUliMnFpekFsT0diU2EvK3JrUElnYnpXQjRpT1QyWVhyOVB4bXR5d2o4WUINCnYram55VU5DSzMyZy9FYWsvM0k3YW1vZ2pJY0JISjNFTjVuQWJBMExVVnJwMW5DODJmeEVPOHNJTzNYdjlWNVUNCnc5QnVTVVFRSmtMejNQYVI5WTdRZUEyNW5LUGtqTXZ2Y0UxVU5oeVpIYlNLbmorSitkZmFjb1hsSGtyMEdGTXYNCldkSDZqR0pWcGNQMHBkNjFOa3JKa2c0aStheThwS2ZqdjNUOHN3NWdaVHFweFFaaitVRWxqaVM0SHRPTlhkNlENCnZRSURBUUFCDQotLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0NCg==",
          "expiry": 1608495423
      } 
 ]
  1. Necesitará un servicio que genere el JWT para enviarlo a los servidores de Omnicanal como parte del inicio de un chat para un usuario autenticado.

    a. El encabezado JWT tendrá un aspecto similar al del siguiente ejemplo.

    { 
      "alg": "RS256", 
      "typ": "JWT", 
    } 
    

    Si está utilizando varias claves públicas, deberá pasar el ID de la clave (kid). El encabezado JWT tendrá un aspecto similar al del siguiente ejemplo:

    { 
      "alg": "RS256", 
      "typ": "JWT",
      "kid": "qWO4EaKT1xRO7JC/oqALz6DCVr41B/qL0Hqp4in7hu4="
    } 
    

    b. La carga útil de JWT debe incluir:

    • Como mínimo, las siguientes notificaciones:

      Reclamación Definición
      iss Emiror del token.
      iat La fecha en que se emitió el token, en formato de fecha numérico.
      exp La fecha de expiración del token, en formato de fecha numérico.
      sub Asunto de la notificación.
      NOTA: Le recomendamos que pase el GUID del registro de contacto o cuenta en Customer Service para el usuario que inició sesión. Este GUID se utilizará para identificar y vincular el registro de contacto a la conversación. La búsqueda de registros identifica los registros que tienen el código de estado activo para contactos o cuentas. La identificación de registros no funciona si usa códigos de estado personalizados.
    • lwicontexts: las variables de contexto para pasar como parte de la conversación, ya sea con fines de enrutamiento o para mostrar al agente.
      Más información en
      Administrar contexto personalizado
      método setAuthTokenProvider
      Identificar registros automáticamente mediante el uso de variables de contexto

    • Cualquier otro dato que desee pasar.

    Su carga útil debería tener un aspecto similar al ejemplo siguiente:

      { 
          "sub" : "aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb",  
          "lwicontexts" :"{\"msdyn_cartvalue\":\"10000\", \"msdyn_isvip\":\"false\", \"portalcontactid\":\"aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb\"}", 
          "iat" : 1542622071, 
          "iss" : "contosohelp.com", 
          "exp" : 1542625672, 
          "nbf" : 1542622072 
      } 
    

    c. La firma JWT debe estar firmada por su clave privada.

    Nota

    • Si el token ha vencido o no es válido, el widget de chat lanzará un evento de error.
    • El método setContextProvider no se admite para el chat no autenticado. Debe pasar sus lwicontexts como parte de la carga útil de JWT.
  2. Cree una función JavaScript en su sitio web que acepte una función de devolución de llamada y devuelva un JWT a la función de devolución de llamada. Para evitar el tiempo de espera, esta función de JavaScript debe devolver un JWT en 10 segundos. Este JWT debe cumplir los siguientes criterios:

    • Debe contener el encabezado, la carga útil y la firma del paso 3.

    • Debe estar firmado por la clave privada del par de claves del paso 1.

      Recomendamos generar su JWT en su servidor web.

      El nombre de este método JavaScript se utilizará para crear el registro de configuración de autenticación en la aplicación de administración de Customer Service.

      // This is a sample JavaScript client function  
      
      auth.getAuthenticationToken = function(callback){ 
      
        var xhttp = new XMLHttpRequest(); 
        xhttp.onreadystatechange = function() { 
            if (this.readyState == 4 && this.status == 200) { 
                callback(xhttp.responseText); 
            } 
        }; 
        xhttp.onerror = function(error) { 
            callback(null); 
        }; 
      //Replace this with a call to your token generating service 
        xhttp.open("GET", "https://contosohelp.com/token", true); 
        xhttp.send(); 
      } 
      
  3. Su desarrollador deberá compartir la siguiente información con su Administrador de omnicanal:

    a. La URL del servicio de clave pública del paso 2.

    Ejemplo: https://www.contoso.com/auth/publickey

    b. El nombre de la función de cliente JavaScript del paso 4. El widget de chat en vivo llama a este nombre internamente al inicio de un chat.

    Ejemplo: auth.getAuthenticationToken

    Nota

    Si su experiencia de usuario expone el botón de chat antes de que los usuarios se autentiquen, asegúrese de redirigirlos a su página de autenticación según sea necesario. Puede configurar la redirección en el método del paso 4 o como un paso anterior en su flujo de usuarios.

    La siguiente ilustración muestra la configuración.

    Configuración de chat autenticado.

    Luego, puede configurar un chat autenticado siguiendo estos pasos:

Configuración de chat autenticado

  1. Vaya a la aplicación de administración y cree un registro de configuración de autenticación con la información del paso 5 de la sección anterior. Más información en Crear un registro de configuración de autenticación para chat

  2. Asocie la configuración de autenticación al widget de chat que tendrá una experiencia autenticada. Más información en Agregar autenticación a widget de chat

    En la siguiente ilustración se demuestra la secuencia de llamadas cuando un usuario accede a su chat en una configuración autenticada.

    Tiempo de ejecución de chat autenticado.

Crear la configuración de autenticación para Apple Messages for Business

Requisitos previos

  • Los administradores que configuran los ajustes de autenticación necesitan más permisos de seguridad. Más información en Configurar permisos de seguridad para un campo

  • Asegúrese de que su organización tenga un conocimiento práctico del flujo de OAuth 2.0 OpenID connect. Los pasos se detallan en la siguiente sección.

  • Confirme que su organización tiene al menos un Mensaje enriquecido de tipo de autenticación Apple Messages for Business. Esta configuración de mensaje enriquecido es necesaria para la instalación.

Crear un registro de configuración de autenticación para Apple Messages for Business mediante el flujo de OAuth 2.0 OpenID connect

  1. En el mapa del sitio de Centro de administración de Customer Service, seleccione Configuración del cliente y, a continuación, seleccione Administrar para configuración de autenticación. Aparece una lista de valores de autenticación.

  2. Seleccione Nueva configuración de autenticación y, en la página Agregar configuración de autenticación, proporcione los siguientes detalles:

    1. En la página Tipo de canal, introduzca un nombre y luego seleccione Apple Messages for Business como tipo de canal.

    2. Cambie el tipo de autenticación a flujo de OAuth 2.0 OpenID Connect.

    3. En la página Agregar configuración de autenticación, proporcione la información siguiente:

      • ID de cliente: el identificador de cliente de OAuth 2.0 emitido por un servidor de autorización.
      • Secreto del cliente: secreto de cliente utilizado para autenticar las solicitudes enviadas a un servidor de autorización.
      • Ámbito: cada ámbito que se agregue especificará qué datos de usuario ha solicitado al cliente. El contenido del alcance debe coincidir exactamente con los disponibles a través de su proveedor de servicios.
      • Token de acceso URL: el punto de conexión del proveedor de servicios donde se puede solicitar un token de acceso.
      • URL del token descifrado: el punto de conexión donde la API de OAuth 2.0 puede recuperar la información del cliente que se solicita en el ámbito.
      • Parámetros adicionales: permite que los servicios de autenticación tomen parámetros adicionales de la solicitud.
    4. En la página Detalles adicionales, puede definir opcionalmente un tiempo de caducidad token de acceso, en segundos. El tiempo de caducidad predeterminado es de una hora.
      Después del tiempo especificado, el campo Autenticado en la sección Resumen del cliente de una conversación previamente autenticada cambiará a No.

    5. En la página Mensajes enriquecidos, seleccione Agregar y después seleccione uno o más mensajes enriquecidos para asociarlos con esta configuración de autenticación.

    6. Revise la página Resumen y luego seleccione Siguiente. Se configura el ajuste de autenticación.

    7. En la página Información de redirección, copie la URL. Agregue esta URL a las URL de devolución de llamada permitidas en el sitio web del proveedor de servicios de autenticación.

    8. Seleccione Finalizar.

Agregar la autenticación a un canal de Apple Messages for Business

  1. Abra la secuencia de trabajo que contiene la instancia de canal a la que desea agregar autenticación.

  2. En la página Comportamientos de la configuración del canal, vaya a Configuración de autenticación, habilite la capacidad y, a continuación, seleccione la configuración correcta en el menú desplegable. Más información en Configurar un canal Apple Messages for Business

  3. Para revisar o actualizar la configuración de autenticación de cada instancia de canal, seleccione Editar.

Agregar un widget de chat
Configurar una encuesta previa a la conversación
Crear respuestas rápidas
Crear y administrar las horas operativas
Insertar un widget de chat en portales de Power Apps
Identificar automáticamente a clientes