Tutorial: Configuración de Microsoft Dynamics 365 Fraud Protection con Azure Active Directory B2C
Las organizaciones pueden usar Microsoft Dynamics 365 Fraud Protection (DFP) para evaluar el riesgo durante los intentos de crear cuentas e inicios de sesión fraudulentos. Los clientes usan la evaluación de Microsoft DFP a fin de bloquear intentos sospechosos de crear cuentas nuevas, falsas o de ponerlas en peligro, o de enfrentarse a estos.
En este tutorial, descubrirá cómo integrar Microsoft DFP con Azure Active Directory B2C (Azure AD B2C). En esta guía se muestra cómo incorporar la huella digital del dispositivo de Microsoft DFP y cómo crear cuentas y puntos de conexión de la API de evaluación de inicio de sesión en una directiva personalizada de Azure AD B2C.
Más información: Información general sobre Microsoft Dynamics 365 Fraud Protection
Requisitos previos
Para empezar, necesitará lo siguiente:
- Una suscripción de Azure
- Si no tiene una, puede obtener una cuenta gratuita de Azure
- Un inquilino de Azure AD B2C vinculado a la suscripción de Azure
- Una suscripción Microsoft DFP
- Vea Precios de Microsoft Dynamics 365
- Puede configurar una versión de cliente de prueba.
Descripción del escenario
La integración de Microsoft DFP incluye los componentes siguientes:
- Inquilino de Azure AD B2C: autentica al usuario y actúa como cliente de Microsoft DFP. Hospeda un script de huellas digitales que recopila datos de identificación y diagnóstico de los usuarios que ejecutan una directiva de destino. Bloquea los intentos de inicio de sesión o registro, o se enfrenta a ellos, en función del resultado de evaluación de las reglas que devuelve Microsoft DFP.
- Plantillas de interfaz de usuario personalizadas: personalizan el contenido HTML de las páginas que representa Azure AD B2C. Estas páginas incluyen el fragmento de código de JavaScript necesario para la huella digital de Microsoft DFP.
- Servicio de huellas digitales de Microsoft DFP: script insertado dinámicamente, que registra la telemetría del dispositivo y los detalles del usuario autoafirmado a fin de crear una huella digital identificable de forma única para el usuario.
- Puntos de conexión de la API de Microsoft DFP: proporciona el resultado de la decisión y acepta un estado final que refleja la operación emprendida por la aplicación cliente. Azure AD B2C se comunica con los puntos de conexión de Microsoft DFP mediante conectores de API REST. La autenticación de API se produce gracias a la concesión de client_credentials al inquilino de Microsoft Entra ID en el que Microsoft DFP tiene licencia y en el que está instalado para obtener un token de portador.
En el siguiente diagrama de arquitectura se muestra la implementación.
- El usuario llega a una página de inicio de sesión, selecciona la opción para crear una cuenta y escribe la información necesaria. Azure AD B2C recopila los atributos de usuario.
- Azure AD B2C llama a la API de Microsoft DFP y pasa los atributos de usuario.
- Una vez que Microsoft DFP consume la información y la procesa, devuelve el resultado a Azure AD B2C.
- Azure AD B2C recibe información de la API de Microsoft DFP. En caso de fallo, aparece un mensaje de error. Si se realiza de forma correcta, el usuario se autentica y se escribe en el directorio.
Configuración de la solución
- Cree una aplicación de Facebook configurada para permitir la federación a Azure AD B2C.
- Agregue el secreto de Facebook que creó como una clave de directiva de Identity Experience Framework.
Configuración de la aplicación en Microsoft DFP
Configure el inquilino de Microsoft Entra para usar Microsoft DFP.
Configuración del dominio personalizado
En un entorno de producción, use un dominio personalizado para Azure AD B2C y para el servicio de huella digital de Microsoft DFP. El dominio de ambos servicios está en la misma zona DNS raíz para evitar que la configuración de privacidad del explorador bloquee las cookies entre dominios. Esta configuración no es necesaria en un entorno que no sea de producción.
Vea la tabla siguiente para obtener ejemplos de entorno, servicio y dominio.
Entorno | Servicio | Domain |
---|---|---|
Desarrollo | Azure AD B2C | contoso-dev.b2clogin.com |
Desarrollo | Servicio de huella digital de Microsoft DFP | fpt.dfp.microsoft-int.com |
UAT | Azure AD B2C | contoso-uat.b2clogin.com |
UAT | Servicio de huella digital de Microsoft DFP | fpt.dfp.microsoft.com |
Producción | Azure AD B2C | login.contoso.com |
Producción | Servicio de huella digital de Microsoft DFP | fpt.login.contoso.com |
Implementación de las plantillas de la interfaz de usuario
- Implemente las plantillas de la interfaz de usuario de Azure AD B2C proporcionadas en un servicio de hospedaje de Internet de acceso público como Azure Blob Storage.
- Reemplace el valor
https://<YOUR-UI-BASE-URL>/
por la dirección URL raíz de la ubicación de implementación.
Nota:
Más adelante necesitará la URL base para configurar directivas de Azure AD B2C.
- En el archivo
ui-templates/js/dfp.js
, reemplace<YOUR-DFP-INSTANCE-ID>
por el identificador de la instancia de Microsoft DFP. - Asegúrese de que CORS está habilitado para el nombre de dominio
https://{your_tenant_name}.b2clogin.com
oyour custom domain
de Azure AD B2C.
Más información: documentación de personalización de la interfaz de usuario.
Configuración de Azure AD B2C
Incorporación de claves de directiva para el identificador y el secreto de la aplicación cliente de Microsoft DFP
- En el inquilino de Microsoft Entra donde está configurado Microsoft DFP, cree una aplicación de Microsoft Entra y conceda el consentimiento del administrador.
- Cree un valor secreto para este registro de aplicación. Anote el id. de cliente de la aplicación y el valor del secreto de cliente.
- Guarde los valores de identificador y secreto de cliente como claves de directiva en el inquilino de Azure AD B2C.
Nota:
Más adelante necesitará las claves de directiva para configurar directivas de Azure AD B2C.
Reemplazo de los valores de configuración
En las directivas personalizadas proporcionadas, busque los marcadores de posición siguientes y reemplácelos por los valores correspondientes de la instancia.
Marcador de posición | Reemplazar por | Notas |
---|---|---|
{Settings:Production} | Si se deben implementar las directivas en el modo de producción |
true o false |
{Settings:Tenant} | Su nombre corto de inquilino |
your-tenant - desde your-tenant.onmicrosoft.com |
{Settings:DeploymentMode} | Modo de implementación de Application Insights que se usará |
Production o Development |
{Settings:DeveloperMode} | Si se deben implementar las directivas en el modo de desarrollador de Application Insights |
true o false |
{Settings:AppInsightsInstrumentationKey} | Clave de instrumentación de la instancia de Application Insights* | 01234567-89ab-cdef-0123-456789abcdef |
Identificador de aplicación {Settings:IdentityExperienceFrameworkAppId} de la aplicación IdentityExperienceFramework configurada en el inquilino de Azure AD B2C. | 01234567-89ab-cdef-0123-456789abcdef |
|
{Settings:ProxyIdentityExperienceFrameworkAppId} | Identificador de aplicación de la aplicación ProxyIdentityExperienceFramework configurada en el inquilino de Azure AD B2C | 01234567-89ab-cdef-0123-456789abcdef |
{Settings:FacebookClientId} | Identificador de la aplicación de Facebook que configuró para la federación con B2C | 000000000000000 |
{Settings:FacebookClientSecretKeyContainer} | Nombre de la clave de directiva en la que guardó el secreto de la aplicación de Facebook | B2C_1A_FacebookAppSecret |
{Settings:ContentDefinitionBaseUri} | Punto de conexión en el que implementó los archivos de interfaz de usuario | https://<my-storage-account>.blob.core.windows.net/<my-storage-container> |
{Settings:DfpApiBaseUrl} | La ruta de acceso base para la instancia de la API de DFP, que se encuentra en el portal de DFP. | https://tenantname-01234567-89ab-cdef-0123-456789abcdef.api.dfp.dynamics.com/v1.0/ |
{Settings:DfpApiAuthScope} | El ámbito client_credentials del servicio de API de DFP | https://api.dfp.dynamics-int.com/.default or https://api.dfp.dynamics.com/.default |
{Settings:DfpTenantId} | El identificador del inquilino de Microsoft Entra ID (no B2C) donde DFP tiene licencia y está instalado |
01234567-89ab-cdef-0123-456789abcdef o consoto.onmicrosoft.com |
{Settings:DfpAppClientIdKeyContainer} | Nombre de la clave de directiva en la que se guarda el identificador de cliente de DFP | B2C_1A_DFPClientId |
{Settings:DfpAppClientSecretKeyContainer} | Nombre de la clave de directiva en la que se guarda el secreto de cliente de DFP | B2C_1A_DFPClientSecret |
{Settings:DfpEnvironment} | Identificador del entorno DFP. | El identificador de entorno es un identificador único global del entorno DFP al que envía los datos. Su política personalizada debería llamar al punto de conexión de la API, incluyendo el parámetro de la cadena de consulta x-ms-dfpenvid=your-env-id> |
*Puede configurar Application Insights en un inquilino o una suscripción de Microsoft Entra. Este valor es opcional, pero se recomienda para ayudar con la depuración.
Nota:
Agregue notificación de consentimiento a la página colección de atributos. Incluya la notificación en la que se indica que la información de identidad y telemetría del usuario se registra para la protección de cuentas.
Configuración de la directiva de Azure AD B2C
- Vaya a la directiva de Azure AD B2C en la carpeta Directivas.
- Siga las instrucciones del paquete de inicio de directivas personalizadas para descargar el paquete de inicio LocalAccounts.
- Configure la directiva para el inquilino de Azure AD B2C.
Nota:
Actualice las directivas proporcionadas para que se relacionen con su inquilino.
Prueba del flujo de usuario
- Abra el inquilino de Azure AD B2C y, en Directivas, seleccione Identity Experience Framework.
- Seleccione el valor de SignUpSignIn que creó anteriormente.
- Seleccione Ejecutar flujo de usuario.
- Aplicación: la aplicación registrada (por ejemplo, JWT).
- Dirección URL de respuesta: URL de redireccionamiento.
- Seleccione Ejecutar flujo de usuario.
- Complete el flujo de registro y cree una cuenta.
Sugerencia
Durante el flujo se llama a Microsoft DFP. Si el flujo está incompleto, confirme que el usuario no esté guardado en el directorio.
Nota:
Actualice las reglas en el portal de Microsoft DFP si usa el motor de reglas de Microsoft DFP.