Compartir a través de


Configuración web de la huella digital del dispositivo

La configuración de la toma de huellas dactilares del dispositivo se realiza en dos fases.

  1. Configure el certificado de capa de sockets seguros (SSL) del servidor de nombres de dominio (DNS) y cárguelo en el portal de Fraud Protection.
  2. Implemente la huella digital del dispositivo.

En esta sección se proporcionan instrucciones detalladas para ambas fases. La primera fase debe completarse una sola vez. Sin embargo, la segunda fase debe repetirse una vez para cada sitio web o aplicación móvil donde se implemente la huella digital del dispositivo.

Configurar DNS y generar un certificado SSL

Complete los siguientes procedimientos para configurar DNS y generar un certificado SSL. La configuración de DNS y SSL, aunque es opcional, se recomienda encarecidamente garantizar una cobertura y un rendimiento óptimos de la huella digital. La configuración de DNS y SSL permite que el script de huella digital se considere una integración de terceros, no una cookie de terceros.

Configurar DNS

Para configurar DNS, siga estos pasos.

  1. Seleccione un subdominio en el dominio raíz, como fpt.contoso.com. Cualquier prefijo se puede usar.
  2. Para el subdominio seleccionado, cree un nombre canónico (CNAME) que apunte a fpt.dfp.microsoft.com.

Generar y cargar un certificado SSL

Para generar y cargar un certificado SSL, siga estos pasos.

  1. Para la incorporación back-end, genere el certificado SSL de la capa de sockets seguros para el subdominio seleccionado. Puede crear un certificado SSL y agregar todos los subdominios en el campo Nombre alternativo del sujeto del certificado.
  2. Vaya al en el portal de Fraud Protection, y en el panel de navegación izquierda, seleccione Integración.
  3. En la página Integración, seleccione Editar y, a continuación, en la página siguiente, seleccione Siguiente para abrir la página Cargar certificado SSL.
  4. Seleccione Seleccionar certificado y, a continuación, cargue el certificado SSL que generó. Si su certificado tiene una contraseña, introdúzcala en la ventana de texto. A continuación, seleccione Cargar.

Nota

Solo se admiten archivos .pfx. La propagación del certificado a los servidores de huellas dactilares del dispositivo puede tardar unos minutos.

Implementar huella digital de dispositivos

Su aplicación web o aplicación debe iniciar solicitudes de la huella digital de dispositivos unos segundos antes de antes de se envíe a Fraud Protection para evaluación de riesgos (como una transacción para agregar un instrumento de pago, iniciar sesión, o pagar y enviar). Este requisito garantiza que Protección contra fraudes reciba todos los datos que requiere para realizar una evaluación precisa. Esta sección proporciona instrucciones detalladas para implementar la toma de huellas dactilares del dispositivo en sitios web y aplicaciones móviles.

Para implementar la huella digital de dispositivos, siga estos pasos.

  1. Modifique el siguiente código de secuencia de comandos de JavaScript e insértelo en la página web o en la aplicación donde desea recopilar información de huellas dactilares del dispositivo.

    <script src="https://<Your_Sub_Domain>/mdt.js?session_id=<session_id>&instanceId=<instance_id>" type="text/javascript"></script>
    
    • Your_Sub_Domain : el subdominio bajo su dominio raíz.
    • session_id: el identificador de sesión único del dispositivo creado por el cliente. Puede tener hasta 128 caracteres y puede contener solo los caracteres siguientes: mayúsculas y minúsculas latinos, dígitos, caracteres de subrayado, y guiones (a–z, A–Z, 0–9, _, -). El identificador de sesión debe contener al menos 16 bytes de datos generados aleatoriamente. Cuando se utiliza la codificación hexadecimal, esto se traduce en 32 caracteres hexadecimales. Aunque Microsoft recomienda usar un identificador único global (GUID) para el identificador de sesión, no es necesario.
    • instance_id: este es un valor necesario para integrar su sitio web con la huella digital de dispositivos. Utilice el valor de Id. de huella digital de dispositivos que aparece en el mosaico Entorno actual de la página Integración del entorno correspondiente en el portal Fraud Protection.

    Ejemplo

    <script src="https://fpt.contoso.com/mdt.js?session_id=211d403b-2e65-480c-a231-fd1626c2560e&instanceId=b472dbc3-0928-4577-a589-b80090117691" type="text/javascript"></script>
    

    Aquí mostramos un ejemplo de una respuesta para mdt.js.

    window.dfp={url:"https://fpt.contoso.com/?session_id=211d403b-2e65-480c-a231-fd1626c2560e&CustomerId=b472dbc3-0928-4577-a589-b80090117691",sessionId:"211d403b-2e65-480c-a231-fd1626c2560e",customerId:"b472dbc3-0928-4577-a589-b80090117691",dc:"uswest"};window.dfp.doFpt=function(doc){var frm,src;true&&(frm=doc.createElement("IFRAME"),frm.id="fpt_frame",frm.style.width="1px",frm.style.height="1px",frm.style.position="absolute",frm.style.visibility="hidden",frm.style.left="10px",frm.style.bottom="0px",frm.setAttribute("style","color:#000000;float:left;visibility:hidden;position:absolute;top:-100;left:-200;border:0px"),src="https://Your_Sub_Domain/?session_id=211d403b-2e65-480c-a231-fd1626c2560e&CustomerId=b472dbc3-0928-4577-a589-b80090117691",frm.setAttribute("src",src),doc.body.appendChild(frm))};
    
  2. Cargue la huella digital del dispositivo después de que se carguen los elementos de la página.

    window.dfp.doFpt(this.document);
    
  3. Cuando envíe transacciones en la API de Fraud Protection , establezca una ID de sesión en el campo deviceContextId. Para Evaluaciones, establezca un ID de sesión en el campo deviceFingerprinting.id .

  4. Establezca el campo 'device.ipAddress' en la dirección IP del cliente que recibe su sitio web cuando un cliente utiliza su sitio. Para evaluaciones, establezca la dirección IP del cliente en el campo deviceFingerprinting.ipAddress. Este campo es opcional y no es necesario configurarlo si no lo tiene.

Habilitación de la integración del lado cliente para la huella digital del dispositivo

Para determinados escenarios de huellas digitales web, Protección contra fraudes admite una clase especializada de integración denominada integración del lado cliente. La integración del lado cliente difiere de las prácticas de integración estándar porque la respuesta de huella digital se devuelve directamente al cliente como una carga cifrada, omitiendo la llamada de evaluación de servidor a servidor.

La integración del lado cliente es útil para escenarios de baja latencia en los que omitir la llamada de servidor a servidor es ventajoso. Para determinar si la integración del lado cliente es la adecuada para su escenario, consulte la siguiente guía de preguntas.

  1. ¿Solo mi dispositivo de escenario tiene huellas digitales?

    Si el escenario no es solo la huella digital del dispositivo, la integración del lado cliente no es adecuada para su escenario.

  2. ¿Quiero que mis datos de huellas digitales estén en el explorador en lugar de que mi servidor lo capture?

    En la integración tradicional de servidor a servidor, una vez completada la recopilación de atributos en el sitio web, los datos se insertan en los servidores de Protección contra fraudes, donde puede obtener la respuesta de evaluación en el servidor realizando la llamada API de evaluación estándar. Sin embargo, en la integración del lado cliente, cuando los datos de recopilación de atributos se insertan en los servidores de Protección contra fraudes, la respuesta de evaluación vuelve y se devuelve directamente en el explorador. De este modo, el servidor puede extraer la respuesta de evaluación del propio explorador en lugar de realizar la llamada de servidor a servidor, lo que ahorra tiempo. Tenga en cuenta que la propia huella digital tarda un par de segundos, por lo que la respuesta de evaluación solo estará presente en el explorador si el usuario está en la página durante unos segundos. Si el escenario se beneficia de los datos que ya están presentes en el explorador, la integración del lado cliente puede ser adecuada para usted.

En general, la mayoría de los escenarios de huellas digitales se resuelven mediante la integración estándar de servidor a servidor y la integración del lado cliente es beneficiosa para algunos escenarios específicos en los que la disminución de la latencia es crítica. Dado que la integración del lado cliente es una clase especializada de integración simplificada y segura, se deben cumplir los siguientes requisitos previos para habilitarla.

  • Debe estar en un entorno raíz de un inquilino de Protección contra fraudes.
  • Debe configurar una llamada externa que devuelva una respuesta de clave de cifrado en el formato JSON Web Key Sets (JWKS). Esta llamada externa devuelve la clave que usa Protección contra fraudes para cifrar la carga. Puede usar esta clave después para descifrar el lado servidor de respuesta de protección contra fraudes que recibe inicialmente. Usted es responsable de proporcionar la clave para el cifrado y el descifrado. Para obtener información sobre cómo configurar llamadas externas, consulte Llamadas externas.

En el código siguiente se muestra un ejemplo del formato JWKS.

{
  "keys":
  [
    {
      "kty":null,
      "use":null,
      "kid":null,
      "k":null
    }
  ]
}
  • Solo debe usar las secciones metadatos y huellas digitales del dispositivo de la plantilla de evaluación de huellas digitales del dispositivo. Si hay secciones de esquema adicionales o si no usa la plantilla de evaluación de huellas digitales del dispositivo, la opción de integración del lado cliente no está disponible.

Cuando llegue a la página Configuración del Asistente para la evaluación de una plantilla de huella digital del dispositivo, verá la opción de integración del lado cliente disponible. Después de elegir habilitar la integración del lado cliente, seleccionará la llamada externa con el formato de respuesta JWKS que configuró.

Para completar la configuración de integración del lado cliente, para devolver la respuesta cifrada en el explorador, debe usar una versión modificada del siguiente ejemplo de JavaScript.

<script src="https://<Your_Sub_Domain>/mdt.js?session_id=<session_id>&customerId=<customer_id>&assessment=<assessment>&requestId=<request_id>" type="text/javascript"></script>
  • Your_Sub_Domain : el subdominio bajo su dominio raíz.
  • session_id: el identificador de sesión único del dispositivo creado por el cliente. Puede tener hasta 128 caracteres y solo puede contener los siguientes caracteres: letras romanas mayúsculas y minúsculas, dígitos, caracteres de subrayado y guiones (a–z, A–Z, 0–9, _, -). El identificador de sesión debe contener al menos 16 bytes de datos generados aleatoriamente. Cuando se utiliza la codificación hexadecimal, esto se traduce en 32 caracteres hexadecimales. Aunque Microsoft recomienda usar un identificador único global (GUID) para el identificador de sesión, no es necesario.
  • customer_id: este es un valor necesario para integrar el sitio web con la huella digital del dispositivo. Use el valor de Id. de entorno que aparece en el icono Entorno actual de la página Integración del entorno correspondiente en el portal protección contra fraudes. Debe estar en un entorno raíz para que la integración del lado cliente funcione.
  • assessment : el nombre de API de la evaluación de huellas digitales del dispositivo configurado con la integración del lado cliente habilitada. El nombre de la API distingue mayúsculas de minúsculas y se extrae de la página de configuración de evaluación.
  • request_id: un identificador único para la propia solicitud, independiente del identificador de sesión. Este identificador debe ser un GUID de al menos 32 caracteres de longitud.

En el ejemplo siguiente se muestra el código JavaScript con valores de ejemplo.

<script src="https://fpt.contoso.com/mdt.js?session_id=2b2a1f5e-afa7-4c6d-a905-ebf66eaedc83&customerId=b3f6d54b-961c-4193-95ee-b6b204c7fd23&assessment=CSI&requestId=b12e86a0-37b1-43a2-958b-3f04fe7cef6c" type="text/javascript"></script>

Una vez configurado este script y la integración del lado cliente está habilitada, la respuesta de huella digital se devuelve como una carga cifrada en el explorador del cliente. Puede usar una función de devolución de llamada para obtener la carga de respuesta cifrada. En el ejemplo siguiente se muestra la función de devolución de llamada en uso:

window.dfp.doFpt(document, function (response) {
    if(response == null || response.startsWith('ServerError'))
        console.log("Error Scenario");
    else
        console.log("Success Scenario"); // pass to server so it can decrypt and use response
});

Todavía tiene que pasar la carga al servidor para descifrarla y usar la respuesta. No esperamos que llame a la llamada externa para obtener la clave de cifrado que hospeda para descifrar la carga. Debe almacenar y acceder a la clave de la misma manera segura que obtiene y administra otros secretos usados en el servidor.

Recursos adicionales