Configuración de Microsoft Entra ID para aprovisionar usuarios en una base de datos SQL

En este documento se describen los pasos que hay que llevar a cabo para aprovisionar y desaprovisionar automáticamente usuarios de Microsoft Entra ID en una base de datos SQL.

Para información importante acerca de lo que hace este servicio, cómo funciona y preguntas frecuentes al respecto, consulte los artículos Automatización del aprovisionamiento y desaprovisionamiento de usuarios en las aplicaciones de SaaS con Microsoft Entra ID y Arquitectura de aprovisionamiento de aplicaciones locales.

El siguiente vídeo proporciona información general sobre el aprovisionamiento local.

Requisitos previos para el aprovisionamiento de una instancia de SQL Database

Requisitos previos locales

La aplicación se basa en una base de datos SQL, en la que los registros de los usuarios se pueden crear, actualizar y eliminar. El equipo que ejecuta el agente de aprovisionamiento debe tener:

  • Windows Server 2016 o una versión posterior.
  • Conectividad al sistema de base de datos de destino y conectividad saliente a login.microsoftonline.com, otros dominios de Microsoft Online Services y Azure. Un ejemplo es una máquina virtual de Windows Server 2016 hospedada en IaaS de Azure o detrás de un proxy.
  • Al menos 3 GB de RAM.
  • .NET Framework 4.7.2.
  • El controlador ODBC para la base de datos SQL.

La configuración de la conexión a la base de datos de la aplicación se realiza a través de un asistente. En función de las opciones que seleccione, es posible que algunas de las pantallas del asistente no estén disponibles y que la información sea ligeramente diferente. Use la siguiente información como orientación para la configuración.

Bases de datos admitidas

  • Microsoft SQL Server y Azure SQL
  • IBM DB2 9.x
  • IBM DB2 10.x
  • IBM DB2 11.5
  • Oracle 10g y 11g
  • Oracle 12c y 18c
  • MySQL 5.x
  • MySQL 8.x
  • Postgres

Requisitos de la nube

  • Un inquilino de Microsoft Entra con Microsoft Entra ID P1 o Premium P2 (o EMS E3 o E5).

    El uso de esta característica requiere una licencia Microsoft Entra ID P1. Para encontrar la licencia que más se ajuste a sus requisitos, consulte la Comparación de las características de disponibilidad general de Microsoft Entra ID.

  • El rol Administrador de identidad híbrida para configurar el agente de aprovisionamiento y los roles Administrador de aplicaciones o Administrador de aplicaciones en la nube para configurar el aprovisionamiento en Azure Portal.

  • Los usuarios de Microsoft Entra que se van a aprovisionar en la base de datos deben contar ya con los atributos que necesitará el esquema de la base de datos y que no genera la propia base de datos.

Preparación de la base de datos de ejemplo

En este artículo configurará el conector de SQL de Microsoft Entra para interactuar con la base de datos relacional de la aplicación. Normalmente, las aplicaciones administran el acceso con una tabla en su base de datos SQL, con una fila por usuario. Si ya tiene una aplicación con una base de datos, continúe con la sección siguiente.

Si aún no tiene una base de datos con una tabla adecuada, debe crear una con fines de demostración que Microsoft Entra ID pueda usar. Si usa SQL Server, ejecute el script de SQL que se encuentra en el Apéndice A. Este script crea una base de datos de ejemplo con el nombre CONTOSO, que contiene una sola tabla Employees. Esta es la tabla de la base de datos en la que se van a aprovisionar los usuarios.

Columna de la tabla Source
ContosoLogin Nombre principal de usuario de Microsoft Entra
FirstName Nombre dado de Microsoft Entra
Apellidos Apellido de Microsoft Entra
Email Correo electrónico de Exchange Online
InternalGUID Generado por la propia base de datos
AzureID Id. de objeto de Microsoft Entra
textID Alias de correo de Microsoft Entra ID

Determinación de cómo interactuará el conector SQL de Microsoft Entra con la base de datos

Deberá tener una cuenta de usuario en la instancia de SQL con los derechos para actualizar los datos en las tablas de la base de datos. Si otra persona administra la base de datos SQL, póngase en contacto con ella para obtener el nombre y la contraseña de la cuenta que tiene que usar Microsoft Entra ID para autenticarse en la base de datos. Si la instancia de SQL está instalada en otro equipo, también tendrá que asegurarse de que la base de datos SQL permita las conexiones entrantes desde el controlador ODBC del equipo del agente.

Si ya tiene una base de datos para la aplicación, deberá determinar cómo Microsoft Entra ID debe interactuar con ella: interacción directa con tablas y vistas, con procedimientos almacenados ya presentes en la base de datos o mediante instrucciones SQL que proporcione para consultas y actualizaciones. El motivo de esta configuración es que una aplicación más compleja podría tener en su base de datos otras tablas auxiliares, requerir la paginación de tablas con miles de usuarios o necesitar Microsoft Entra ID para llamar a un procedimiento almacenado que realice procesamiento de datos extra, como cifrado, hash o comprobaciones de validez.

Al crear la configuración para que el conector interactúe con la base de datos de una aplicación, primero debe configurar el modo en el que el host de conector lee el esquema de la base de datos y, a continuación, configurar el método que el conector debe usar de forma continua con perfiles de ejecución. Cada perfil de ejecución especifica el modo en el que el conector debe generar las instrucciones SQL. La elección de los perfiles de ejecución y el método dentro de un perfil de ejecución depende de lo que admita el motor de la base de datos y lo que la aplicación requiera.

  • Después de la configuración, cuando se inicie el servicio de aprovisionamiento, realizará automáticamente las interacciones configuradas en el perfil de ejecución Full Import (Importación completa). En este perfil de ejecución, el conector leerá todos los registros de los usuarios de la base de datos de la aplicación, normalmente con una instrucción SELECT. Este perfil de ejecución es necesario para que, más adelante, si Microsoft Entra ID necesita aplicar un cambio para un usuario, Microsoft Entra ID a sabrá actualizar un registro existente para ese usuario en la base de datos, en lugar de crear un nuevo registro para ese usuario.

  • Cada vez que se efectúen cambios en Microsoft Entra ID, como asignar un nuevo usuario a la aplicación o actualizar un usuario actual, el servicio de aprovisionamiento realizará las interacciones de la base de datos de SQL configuradas en el perfil de ejecución Export (Exportación). En el perfil de ejecución Exportar, Microsoft Entra ID emitirá instrucciones SQL para insertar, actualizar y eliminar registros de la base de datos, con el fin de sincronizar el contenido de esta con Microsoft Entra ID.

  • Si la base de datos lo admite, también puede configurar un perfil de ejecución Delta Import (Importación diferencial). En este perfil de ejecución, Microsoft Entra ID leerá los cambios efectuados en la base de datos, a excepción de los realizados por Microsoft Entra ID, desde la última importación completa o diferencial. Este perfil de ejecución es opcional, ya que requiere que la base de datos esté estructurada para permitir que se lean los cambios.

En la configuración de cada perfil de ejecución del conector, deberá especificar si el conector de Microsoft Entra debe generar sus propias instrucciones SQL para una tabla o vista, llamar a sus procedimientos almacenados o usar las consultas SQL personalizadas que usted facilite. Normalmente, usará el mismo método para todos los perfiles de ejecución de un conector.

  • Si selecciona el método Table o View para un perfil de ejecución, el conector de Microsoft Entra generará las instrucciones SQL necesarias (SELECT, INSERT, UPDATE y DELETE) para interactuar con la tabla o vista de la base de datos. Este método es el enfoque más sencillo si la base de datos tiene una sola tabla o una vista actualizable con pocas filas.
  • Si selecciona el método de procedimiento almacenado, la base de datos deberá tener cuatro procedimientos almacenados: leer una página de usuarios, agregar un usuario, actualizar un usuario y eliminar un usuario. Tendrá que configurar el conector de Microsoft Entra con los nombres y parámetros de esos procedimientos almacenados a los que se deba llamar. Este enfoque requiere más configuración en la base de datos de SQL y, normalmente, solo es necesario si la aplicación requiere más procesamiento para cada cambio de un usuario o para la paginación en grandes conjuntos de resultados.
  • Si selecciona el método de consulta SQL, escribirá las instrucciones SQL específicas que quiere que el conector emita durante un perfil de ejecución. Configurará el conector con los parámetros que el conector debe rellenar en las instrucciones SQL, como paginar los conjuntos de resultados durante una importación o establecer los atributos de un nuevo usuario que se crea durante una exportación.

En este artículo, se muestra cómo usar el método Table para interactuar con la tabla Employees de la base de datos de ejemplo, en los perfiles de ejecución Export (Exportación) y Full Import (Importación completa). Para más información sobre cómo configurar los métodos Procedimiento almacenado o Consulta SQL, vea Referencia técnica del conector de SQL genérico, donde se proporcionan más detalles y requisitos específicos.

Elección de los identificadores únicos en el esquema de la base de datos de la aplicación

La mayoría de las aplicaciones tienen un identificador único para cada usuario de la aplicación. Si va a aprovisionar datos en una tabla de una base de datos que ya existe, debe identificar una columna de esa tabla que tenga un valor para cada usuario, donde ese valor sea único y no cambie. Esta columna será el delimitador que Microsoft Entra ID utilice para identificar las filas existentes, a fin de poder actualizarlas o eliminarlas. Para más información sobre los delimitadores, vea Acerca de los atributos delimitadores y los nombres distintivos.

Si la base de datos de la aplicación ya existe y tiene usuarios, y usted quiere que Microsoft Entra ID los mantenga actualizados, deberá tener un identificador para cada usuario que sea el mismo entre la base de datos de la aplicación y el esquema de Microsoft Entra. Por ejemplo, si asigna un usuario a la aplicación en Microsoft Entra ID y ese usuario ya se encuentra en esa base de datos, los cambios en ese usuario en Microsoft Entra ID deberían actualizar una fila existente para ese usuario, en lugar de agregar una nueva fila. Dado que es probable que Microsoft Entra ID no almacene el identificador interno de la aplicación para ese usuario, tendrá que seleccionar otra columna para consultar la base de datos. El valor de esta columna podría ser un nombre principal de usuario, una dirección de correo electrónico, un identificador de empleado u otro identificador que esté presente en Microsoft Entra ID para cada usuario que esté dentro del ámbito de la aplicación. Si el identificador de usuario que usa la aplicación no es un atributo almacenado en la representación de Microsoft Entra del usuario, no es necesario extender el esquema de usuario de Microsoft Entra con un atributo de extensión y rellenar ese atributo a partir de la base de datos. Puede ampliar el esquema de Microsoft Entra y establecer valores de extensión mediante PowerShell.

Asignación de atributos al esquema de la base de datos en Microsoft Entra ID

Cuando Microsoft Entra ID ha establecido un vínculo entre un usuario de Microsoft Entra ID y un registro en la base de datos, ya sea para un usuario que ya está en la base de datos o para uno nuevo, Microsoft Entra ID puede aprovisionar cambios de atributo del usuario de Microsoft Entra en la base de datos. Además de los identificadores únicos, inspeccione la base de datos para detectar si hay otras propiedades necesarias. Si las hay, asegúrese de que los usuarios que se aprovisionarán en la base de datos tengan atributos que se puedan asignar a las propiedades necesarias.

También puede configurar el comportamiento de desaprovisionamiento. Si un usuario asignado a la aplicación se elimina en Microsoft Entra ID, entonces Microsoft Entra ID enviará una operación de eliminación a la base de datos. También es posible que quiera que Microsoft Entra ID actualice la base de datos cuando un usuario ya no pueda usar la aplicación. Si se elimina la asignación de un usuario de una aplicación, se elimina temporalmente en Microsoft Entra ID o se le impide iniciar sesión, puede configurar Microsoft Entra ID para que envíe un cambio de atributo. Si el aprovisionamiento se realiza en una tabla de base de datos existente, querrá que una columna de esa tabla se asigne a isSoftDeleted. Cuando el usuario abandone el ámbito, Microsoft Entra ID establecerá el valor de ese usuario como True.

1. Instalación del controlador ODBC

La instancia de Windows Server en la que va a instalar el agente de aprovisionamiento requiere un controlador ODBC para la base de datos de destino. Si planea conectarse a una base de datos de Azure SQL o SQL Server, debe descargar el controlador ODBC para SQL Server (x64) e instalarlo en Windows Server. Para otras bases de datos SQL, consulte las instrucciones del proveedor de software independiente sobre cómo instalar el controlador ODBC.

2. Creación de un archivo de conexión DSN

El conector SQL genérico requiere un archivo de nombre de origen de datos (DSN) para conectarse al punto de conexión de SQL. Primero hay que crear un archivo con la información de conexión ODBC.

  1. Inicie la utilidad de administración ODBC en el servidor. Use la versión de 64 bits.

    Screenshot that shows ODBC management.

  2. Seleccione la pestaña Archivo DNS y luego Agregar.

    Screenshot that shows the File DSN tab.

  3. Si usa SQL Server o Azure SQL, seleccione SQL Server Native Client 11.0 y seleccione Siguiente. Si usa otra base de datos, seleccione su controlador ODBC.

    Screenshot that shows choosing a native client.

  4. Asigne un nombre al archivo, como GenericSQL, y seleccione Siguiente. Screenshot that shows naming the connector.

  5. Seleccione Finalizar.

    Screenshot that shows Finish.

  6. Ahora configure la conexión. Los pasos siguientes variarán en función del controlador ODBC que use. En esta ilustración se supone que usa el controlador para conectarse a SQL Server. Si la instancia de SQL Server se encuentra en un equipo servidor diferente, escriba el nombre del servidor. Después, seleccione Siguiente.

    Screenshot that shows entering a server name.

  7. Si el usuario con el que ejecuta este paso tiene permisos para conectarse a la base de datos, mantenga seleccionada la autenticación de Windows. Si el administrador de SQL Server requiere una cuenta local de SQL, indique esas credenciales en su lugar. Seleccione Siguiente.

    Screenshot that shows Windows authentication.

  8. Escriba el nombre de la base de datos, que en este ejemplo es CONTOSO.

    Screenshot that shows entering a database name.

  9. Mantenga los valores predeterminados de esta pantalla y seleccione Finalizar.

    Screenshot that shows selecting Finish.

  10. Para comprobar que todo funciona según lo previsto, seleccione Probar origen de datos.

    Screenshot that shows Test Data Source.

  11. Asegúrese de que la prueba se ha realizado correctamente.

    Screenshot that shows success.

  12. Seleccione Aceptar dos veces. Cierre el Administrador de orígenes de datos ODBC. El archivo de conexión DSN se guarda de forma predeterminada en la carpeta Documentos.

3. Instalación y configuración del agente de aprovisionamiento de Microsoft Entra Connect

Si ya ha descargado el agente de aprovisionamiento y lo ha configurado para otra aplicación local, continúe la lectura en la sección siguiente.

  1. Inicie sesión en Azure Portal.
  2. Vaya a Aplicaciones empresariales y seleccione Nueva aplicación.
  3. Busque la aplicación ECMA local, asigne un nombre a la aplicación y seleccione Crear para agregarla al inquilino.
  4. En el menú, vaya a la página de aprovisionamiento de la aplicación.
  5. Seleccione Comenzar.
  6. En la página Aprovisionamiento, cambie el modo a Automático.

Screenshot of selecting Automatic.

  1. En Conectividad local, seleccione Descargar e instalar y seleccione Aceptar términos descargar.

Screenshot of download location for agent.

  1. Salga del portal y ejecute el instalador del agente de aprovisionamiento, acepte los términos de servicio y seleccione Instalar.
  2. Espere al Asistente para configuración del agente de aprovisionamiento de Microsoft Entra y, después, seleccione Siguiente.
  3. En el paso Seleccione la extensión, seleccione Aprovisionamiento de aplicaciones locales y Siguiente.
  4. El agente de aprovisionamiento usa el navegador web del sistema operativo para mostrar una ventana emergente para que el usuario se autentique en Microsoft Entra ID y, potencialmente, también en el proveedor de identidades de su organización. Si usa Internet Explorer como explorador en Windows Server, es posible que tenga que agregar sitios web de Microsoft a la lista de sitios de confianza del explorador para permitir que JavaScript se ejecute correctamente.
  5. Proporcione las credenciales de un administrador de Microsoft Entra cuando se le solicite para la autorización. Es necesario que el usuario tenga el rol Administrador de identidad híbrida o Administrador global.
  6. Seleccione Confirmar para confirmar la configuración. Una vez que la instalación se haya realizado correctamente, puede seleccionar Salir y cerrar también el instalador de paquete del agente de aprovisionamiento.

4. Configuración de la aplicación ECMA local

  1. Vuelva al portal y, en la sección Conectividad local, seleccione el agente que ha implementado y seleccione Asignar agentes.

    Screenshot that shows how to select and assign and agent.

  2. Mantenga abierta esta ventana del explorador, ya que completará el siguiente paso de configuración con el Asistente para configuración.

5. Configuración del certificado de host del conector ECMA de Microsoft Entra

  1. En la instancia de Windows Server donde está instalado el agente de aprovisionamiento, haga clic con el botón derecho en el Asistente para configuración de Microsoft ECMA2Host desde el menú Inicio y ejecútelo como administrador. Debe ejecutarlo como administrador de Windows para que el asistente cree los registros de eventos de Windows necesarios.

  2. Una vez iniciada la configuración del host del conector ECMA, si es la primera vez que se ha ejecutado el asistente, se le pedirá que cree un certificado. Deje el puerto predeterminado 8585 y seleccione Generar certificado para generar un certificado. El certificado autogenerado se firma automáticamente como parte de la raíz de confianza. El certificado SAN coincide con el nombre de host.

    Screenshot that shows configuring your settings.

  3. Seleccione Guardar.

Nota:

Si ha elegido generar un nuevo certificado, registre la fecha de expiración del certificado para asegurarse de que establece una programación a fin de regresar al asistente de configuración y volver a generar el certificado antes de que expire.

6. Creación de un conector SQL genérico

En esta sección creará la configuración del conector para la base de datos.

6.1 Configuración de la conexión de SQL

Para crear un conector SQL genérico, siga estos pasos:

  1. Genere un token secreto que se utilizará para autenticar Microsoft Entra ID en el conector. Debe tener un mínimo de 12 caracteres y un valor único para cada aplicación.

  2. Si aún no lo ha hecho, inicie el Asistente para configuración de Microsoft ECMA2Host desde el menú Inicio de Windows.

  3. Seleccione Nuevo conector.

    Screenshot that shows choosing New Connector.

  4. En la página Propiedades, rellene los cuadros con los valores especificados en la tabla que sigue a la imagen y seleccione Siguiente.

    Screenshot that shows entering properties.

    Propiedad Valor
    Nombre Nombre que eligió para el conector, que debe ser único entre todos los conectores del entorno. Por ejemplo, si solo tiene una base de datos SQL, SQL.
    Temporizador de sincronización automática (minutos) 120
    Token secreto Escriba el token secreto que generó para este conector. La clave debe tener un mínimo de 12 caracteres.
    DLL de extensión Para el conector SQL genérico, seleccione Microsoft.IAM.Connector.GenericSql.dll.
  5. En la página Conectividad, rellene los cuadros con los valores especificados en la tabla que sigue a la imagen y seleccione Siguiente.

    Screenshot that shows the Connectivity page.

    Propiedad Descripción
    Archivo DSN Archivo de nombre del origen de datos que creó en el paso anterior, que se usa para conectarse a la instancia de SQL.
    Nombre de usuario Nombre de usuario de una cuenta con derechos para realizar actualizaciones en la tabla en la instancia de SQL. Si la base de datos de destino es SQL Server y se está usando autenticación de Windows, el nombre de usuario debe tener el formato hostname\sqladminaccount para los servidores independientes o domain\sqladminaccount para los servidores miembros del dominio. Para otras bases de datos, el nombre de usuario será una cuenta local en la base de datos.
    Contraseña Contraseña del nombre de usuario que se ha proporcionado.
    DN es el Delimitador A menos que sepa que el entorno requiere esta configuración, no active las casillas DN es el Delimitador y Export Type:Object Replace.

6.2 Recuperación del esquema de la base de datos

Después de haber proporcionado las credenciales, el host de conector ECMA estará listo para recuperar el esquema de la base de datos. Continúe con la configuración de la conexión de SQL:

  1. En la página Schema 1 (Esquema 1), especifique la lista de tipos de objeto. En este ejemplo, solo hay un tipo de objeto, User. Rellene los cuadros con los valores especificados en la tabla que sigue a la imagen y seleccione Siguiente.

    Screenshot that shows the Schema 1 page.

    Propiedad Value
    Método de detección de tipo de objeto Fixed Value
    Lista de valores fijos/Tabla/Vista/SP Usuario
  2. Al seleccionar Siguiente, se abre la página siguiente automáticamente para la configuración del tipo de objeto User. En la página Esquema 2, indicará cómo se representan los usuarios en la base de datos. En este ejemplo, es una sola tabla SQL denominada Employees. Rellene los cuadros con los valores especificados en la tabla que sigue a la imagen y seleccione Siguiente.

    Screenshot that shows the Schema 2 page.

    Propiedad Value
    User:Attribute Detection Tabla
    User:Table/View/SP Nombre de la tabla de la base de datos, como Employees

    Nota:

    Si se produce un error, compruebe la configuración de la base de datos para asegurarse de que el usuario especificado en la página Conectividad tiene acceso de lectura al esquema de la base de datos.

  3. Una vez que seleccione Siguiente, aparecerá automáticamente la página siguiente para seleccionar las columnas de la tabla que especificó anteriormente, como la tabla Employees de este ejemplo, que se usará como Anchor y DN de los usuarios. Estas columnas contienen identificadores únicos en la base de datos. Puede usar las mismas columnas o diferentes, pero asegúrese de que las filas que ya estén en esta base de datos tengan valores únicos en estas columnas. En la página Esquema 3, rellene los cuadros con los valores especificados en la tabla que sigue a la imagen y seleccione Siguiente.

    Screenshot that shows the Schema 3 page.

    Propiedad Descripción
    Seleccionar un delimitador para: Usuario Columna de la tabla de base de datos que se va a usar para el delimitador, como User:ContosoLogin
    Seleccionar atributo DN para User Columna de la base de datos que se va a usar para el atributo DN, como AzureID
  4. Una vez seleccionado Siguiente, aparecerá automáticamente la página siguiente para que confirme el tipo de datos de cada una de las columnas de la tabla Employee y si el conector debe importarlas o exportarlas. En la página Esquema 4, deje los valores predeterminados y seleccione Siguiente.

    Screenshot that shows the Schema 4 page.

  5. En la página Global, rellene los cuadros y seleccione Siguiente. Use la tabla que sigue a la imagen como guía sobre los cuadros individuales.

    Screenshot that shows the Global page.

    Propiedad Descripción
    Estrategia Delta Para IBM DB2, seleccione None
    Consulta de marca de agua Para IBM DB2, escriba SELECT CURRENT TIMESTAMP FROM SYSIBM.SYSDUMMY1;
    Formato de fecha y hora del origen de datos Para SQL Server yyyy-MM-dd HH:mm:ss y para IBM DB2, YYYY-MM-DD
  6. En la página Particiones, seleccione Siguiente.

    Screenshot that shows the Partitions page.

6.3 Configuración de los perfiles de ejecución

A continuación, configurará los perfiles de ejecución Export (Exportación) y Full Import (Importación completa). Se utilizará el perfil de ejecución Export (Exportación) cuando el host de conector ECMA necesite enviar cambios de Microsoft Entra ID a la base de datos para insertar, actualizar y eliminar registros. El perfil de ejecución Full Import (Importación completa) se usará cuando se inicie el servicio host de conector ECMA para leer el contenido actual de la base de datos. En este ejemplo, usará el método Table en ambos perfiles de ejecución, de modo que el host de conector ECMA genere las instrucciones SQL necesarias.

Continúe con la configuración de la conexión de SQL:

  1. En la página Perfiles de ejecución, mantenga activada la casilla Exportar. Active la casilla Importación completa y seleccione Siguiente.

    Screenshot that shows the Run Profiles page.

    Propiedad Descripción
    Exportación Perfil de ejecución que exportará datos a SQL. Este perfil de ejecución es obligatorio.
    Importación completa Perfil de ejecución que importará todos los datos de orígenes SQL especificados anteriormente.
    Importación diferencial Perfil de ejecución que importará solo los cambios de SQL desde la última importación completa o diferencial.
  2. Una vez seleccionado Siguiente, aparecerá automáticamente la página siguiente para que configure el método para el perfil de ejecución Exportar. En la página Exportar, rellene los cuadros y seleccione Siguiente. Use la tabla que sigue a la imagen como guía sobre los cuadros individuales.

    Screenshot that shows the Export page.

    Propiedad Descripción
    Método de operación Tabla
    Tabla/Vista/SP La misma tabla que se configuró en la pestaña Esquema 2, como Employees
  3. En la página Importación completa, rellene los cuadros y seleccione Siguiente. Use la tabla que sigue a la imagen como guía sobre los cuadros individuales.

    Screenshot that shows the Full Import page.

    Propiedad Descripción
    Método de operación Tabla
    Tabla/Vista/SP La misma tabla que se configuró en la pestaña Esquema 2, como Employees

6.4 Configuración de la manera en la que se exponen los atributos en Microsoft Entra ID

En el último paso de la configuración de la conexión SQL, configure cómo se muestran los atributos en Microsoft Entra ID:

  1. En la página Tipos de objeto, rellene los cuadros y seleccione Siguiente. Use la tabla que sigue a la imagen como guía sobre los cuadros individuales.

    • Delimitador: los valores de este atributo deben ser únicos para cada objeto de la base de datos de destino. El servicio de aprovisionamiento de Microsoft Entra consulta al host ECMA usando este atributo tras el ciclo inicial. Este valor de delimitador debe ser el mismo que la columna delimitadora que configuró antes en la página Schema 3 (Esquema 3).
    • Atributo de consulta: este atributo debe ser el mismo que el delimitador.
    • DN: la opción Generado automáticamente debe seleccionarse en la mayoría de los casos. Si no está seleccionado, asegúrese de que el atributo DN esté asignado a un atributo de Microsoft Entra ID que almacene el DN en el formato siguiente: CN = anchorValue, Object = objectType. Para más información sobre los delimitadores y el DN, vea Acerca de los atributos delimitadores y los nombres distintivos.
    Propiedad Descripción
    Objeto de destino Usuario
    Delimitador Columna configurada en la pestaña Esquema 3, como ContosoLogin
    Atributo de consulta La misma columna que el delimitador, como ContosoLogin
    DN La misma columna que se configuró en la pestaña Esquema 3, como ContosoLogin
    Generado automáticamente Activada
  2. El host de conector ECMA detecta los atributos que admite la base de datos de destino. Puede elegir cuál de esos atributos desea exponer a Microsoft Entra ID. A continuación, estos atributos se pueden configurar en Azure Portal para el aprovisionamiento. En la página Seleccionar atributos, agregue todos los atributos de la lista desplegable, uno a la vez.

En la lista desplegable Atributo se muestra cualquier atributo que se haya detectado en la base de datos de destino y que no se haya elegido en la página Seleccionar atributos anterior. Una vez que haya agregado todos los atributos pertinentes, seleccione Siguiente.

Screenshot of attribute dropdown list.

  1. En la página Desaprovisionando, en Deshabilitar flujo, seleccione Eliminar. Los atributos seleccionados en la página anterior no estarán disponibles para seleccionar en la página Desaprovisionando. Seleccione Finalizar.

Nota

Si usa la opción Establecer valor de atributo, tenga en cuenta que solo se permiten valores booleanos.

Screenshot that shows the Deprovisioning page.

7. Comprobación de que el servicio ECMA2Host se está ejecutando

  1. En el servidor en el que se ejecuta el host del conector ECMA de Microsoft Entra, seleccione Iniciar.

  2. Escriba run y luego services.msc en el cuadro.

  3. En la lista Servicios, asegúrese de que Microsoft ECMA2Host esté presente y en ejecución. Si no es así, seleccione Iniciar.

    Screenshot that shows the service is running.

Si se conecta a una nueva base de datos o a una que está vacía y no tiene usuarios, pase a la sección siguiente. De lo contrario, siga estos pasos para confirmar que el conector ha identificado los usuarios existentes de la base de datos.

  1. Si ha iniciado recientemente el servicio y tiene muchos objetos de usuario en la base de datos, espere varios minutos para que el conector establezca una conexión con la base de datos.

8. Configuración de la conexión de la aplicación en Azure Portal

  1. Vuelva a la ventana del explorador web donde configuró el aprovisionamiento de la aplicación.

    Nota

    Si la ventana agotó el tiempo de espera, tendrá que volver a seleccionar el agente.

    1. Inicie sesión en Azure Portal.
    2. Vaya a Aplicaciones empresariales y seleccione la aplicación ECMA local.
    3. Seleccione Aprovisionamiento.
    4. Si aparece Comenzar, cambie el modo a Automático. En la sección Conectividad local, seleccione el agente que acaba de implementar y Asignar agentes. De lo contrario, vaya a Editar aprovisionamiento.
  2. En la sección Credenciales de administración, escriba la siguiente dirección URL. Reemplace la parte {connectorName} por el nombre del conector en el host de conector ECMA, por ejemplo, SQL. El nombre del conector distingue mayúsculas de minúsculas y debe tener las mismas que las que se configuraron en el asistente. También puede reemplazar localhost por el nombre de host de la máquina.

    Propiedad Valor
    URL de inquilino https://localhost:8585/ecma2host_{connectorName}/scim
  3. Escriba el valor de Token secreto que ha definido al crear el conector.

    Nota

    Si acaba de asignar el agente a la aplicación, espere 10 minutos para que se complete el registro. La prueba de conectividad no funciona hasta que se completa el registro. Forzar que el registro del agente se complete reiniciando el agente de aprovisionamiento en el servidor puede acelerar el proceso de registro. Vaya al servidor, busque servicios en la barra de búsqueda de Windows, identifique el Servicio del agente de aprovisionamiento de Microsoft Entra Connect, haga clic con el botón derecho en el servicio y reinicie.

  4. Seleccione Probar conexión y espere un minuto.

    Screenshot that shows assigning an agent.

  5. Una vez que la prueba de conexión funcione correctamente e indique que las credenciales suministradas están autorizadas a habilitar el aprovisionamiento, seleccione Guardar.

    Screenshot that shows testing an agent.

9. Configuración de las asignaciones de los atributos

A continuación, tendrá que asignar atributos entre la representación del usuario en Microsoft Entra ID y la representación de un usuario en la base de datos SQL de la aplicación local.

Utilizará Azure Portal para configurar la asignación entre los atributos del usuario de Microsoft Entra y los atributos que ha seleccionado previamente en el asistente de configuración del host ECMA.

  1. Asegúrese de que el esquema de Microsoft Entra incluya los atributos que necesita la base de datos. Si la base de datos requiere que los usuarios tengan un atributo, como uidNumber, y ese atributo aún no forma parte del esquema de Microsoft Entra para un usuario, deberá usar la característica de extensión de directorio para agregar ese atributo como una extensión.

  2. En el portal de Microsoft Entra, en Aplicaciones empresariales, seleccione Aplicación ECMA local y, a continuación, la página Aprovisionamiento.

  3. Seleccione Editar aprovisionamiento y espere 10 segundos.

  4. Expanda Asignaciones y seleccione la asignación Aprovisionar usuarios de Microsoft Entra ID. Si esta es la primera vez que ha configurado las asignaciones de atributos para esta aplicación, esta será la única asignación presente para un marcador de posición.

    Screenshot that shows provisioning a user.

  5. Para confirmar que el esquema de la base de datos está disponible en Microsoft Entra ID, active la casilla Mostrar opciones avanzadas y seleccione Editar lista de atributos para ScimOnPremises. Asegúrese de que se muestran todos los atributos seleccionados en el Asistente para configuración. Si no es así, espere varios minutos para que el esquema se actualice y vuelva a cargar la página. Una vez que vea los atributos enumerados, cierre la página para volver a la lista de asignaciones.

  6. Ahora, haga clic en la asignación del marcador de posición userPrincipalName. Esta asignación se agrega de forma predeterminada cuando se configura por primera vez el aprovisionamiento local.

Screenshot of placeholder. Cambie los valores del atributo para que coincidan con lo siguiente:

Tipo de asignación Atributo de origen Atributo de destino
Directo userPrincipalName urn:ietf:params:scim:schemas:extension:ECMA2Host:2.0:User:ContosoLogin

Screenshot of changing value.

  1. Ahora, seleccione Agregar nueva asignación y repita el paso siguiente para cada asignación.

    Screenshot that shows Add New Mapping.

  2. Especifique los atributos de origen y destino para cada una de las asignaciones de la tabla siguiente.

    Screenshot that shows saving the mapping.

    Tipo de asignación Atributo de origen Atributo de destino
    Directo userPrincipalName urn:ietf:params:scim:schemas:extension:ECMA2Host:2.0:User:ContosoLogin
    Directo objectId urn:ietf:params:scim:schemas:extension:ECMA2Host:2.0:User:AzureID
    Directo mail urn:ietf:params:scim:schemas:extension:ECMA2Host:2.0:User:Email
    Directo givenName urn:ietf:params:scim:schemas:extension:ECMA2Host:2.0:User:FirstName
    Directo surname urn:ietf:params:scim:schemas:extension:ECMA2Host:2.0:User:LastName
    Directo mailNickname urn:ietf:params:scim:schemas:extension:ECMA2Host:2.0:User:textID
  3. Una vez que se hayan agregado todas las asignaciones, seleccione Guardar.

10. Asignación de usuarios a una aplicación

Ahora que el host del conector ECMA de Microsoft Entra se comunica con Microsoft Entra ID y se ha configurado la asignación de atributos, puede pasar a configurar quién está dentro del alcance del aprovisionamiento.

Importante

Si ha iniciado sesión con un rol Administrador de identidad híbrida, en esta sección, debe cerrar sesión e iniciarla con una cuenta que tenga el rol de administrador de aplicaciones, administrador de aplicaciones en la nube o administrador global. El rol Administrador de identidad híbrida no tiene permisos para asignar usuarios a aplicaciones.

Si existen usuarios en la base de datos SQL, debe crear asignaciones de roles de aplicación para esos usuarios existentes. Para obtener más información sobre cómo crear asignaciones de roles de aplicación en bloque, consulte Gobernanza de los usuarios existentes de una aplicación en Microsoft Entra ID.

De lo contrario, si no hay usuarios actuales de la aplicación, seleccione un usuario de prueba de Microsoft Entra que se aprovisionará a la aplicación.

  1. Asegúrese de que el usuario tiene todas las propiedades que se asignarán a los atributos necesarios del esquema de la base de datos.

  2. En Azure Portal, seleccione Aplicaciones empresariales.

  3. Seleccione la aplicación Aplicación ECMA local.

  4. A la izquierda, en Administrar, seleccione Usuarios y grupos.

  5. Seleccione Agregar usuario o grupo.

    Screenshot that shows adding a user.

  6. En Usuarios, seleccione Ninguno seleccionado.

    Screenshot that shows None Selected.

  7. Seleccione usuarios de la derecha y luego el botón Seleccionar.

    Screenshot that shows Select users.

  8. Ahora seleccione Asignar.

    Screenshot that shows Assign users.

11. Aprovisionamiento de pruebas

Ahora que los atributos y usuarios están asignados, puede probar el aprovisionamiento a petición con uno de los usuarios.

  1. En Azure Portal, seleccione Aplicaciones empresariales.

  2. Seleccione la aplicación Aplicación ECMA local.

  3. A la izquierda, seleccione Aprovisionamiento.

  4. Seleccione Aprovisionamiento a petición.

  5. Busque alguno de los usuarios de prueba y seleccione Aprovisionar.

    Screenshot that shows testing provisioning.

  6. Después de varios segundos, aparecerá el mensaje Se ha creado correctamente el usuario en el sistema de destino, con una lista de los atributos de usuario.

12. Inicio del aprovisionamiento de usuarios

  1. Una vez que el aprovisionamiento a petición se realice correctamente, vuelva a la página de configuración del aprovisionamiento. Asegúrese de que el ámbito esté establecido solo en los usuarios y grupos asignados, active el aprovisionamiento y seleccione Guardar.

    Screenshot that shows Start provisioning.

  2. Espere varios minutos para que se inicie el aprovisionamiento. Puede tardar hasta 40 minutos. Una vez completado el trabajo de aprovisionamiento, como se explica en la sección siguiente, si terminó con las pruebas, puede desactivar el estado de aprovisionamiento y seleccionar Guardar. Esta acción evita que el servicio de aprovisionamiento se ejecute en el futuro.

Solución de errores de aprovisionamiento

Si se muestra un error, seleccione Ver registros de aprovisionamiento. Busque en el registro una fila en la que el estado sea Error y selecciónela.

Si el mensaje de error es No se pudo crear el usuario, compare los atributos que se muestran con los requisitos del esquema de la base de datos.

Para obtener más información, cambie a la pestaña Solución de problemas y recomendaciones. Si el controlador ODBC devolvió un mensaje, podría aparecer aquí. Por ejemplo, el mensaje ERROR [23000] [Microsoft][ODBC SQL Server Driver][SQL Server]Cannot insert the value NULL into column 'FirstName', table 'CONTOSO.dbo.Employees'; column does not allow nulls. es un error del controlador ODBC. En este caso, column does not allow nulls podría indicar que la columna FirstName de la base de datos es obligatoria, pero el usuario que se está aprovisionando no tenía un atributo givenName, por lo que no se pudo aprovisionar.

Comprobación de aprovisionamiento correcto de los usuarios

Después de esperar, compruebe la base de datos SQL para asegurarse de que los usuarios se están aprovisionando.

Screenshot checking that users are provisioned.

Apéndice A

Si usa SQL Server, puede usar el siguiente script de SQL para crear la base de datos de ejemplo.

---Creating the Database---------
Create Database CONTOSO
Go
-------Using the Database-----------
Use [CONTOSO]
Go
-------------------------------------

/****** Object:  Table [dbo].[Employees]    Script Date: 1/6/2020 7:18:19 PM ******/
SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO

CREATE TABLE [dbo].[Employees](
	[ContosoLogin] [nvarchar](128) NULL,
	[FirstName] [nvarchar](50) NOT NULL,
	[LastName] [nvarchar](50) NOT NULL,
	[Email] [nvarchar](128) NULL,
	[InternalGUID] [uniqueidentifier] NULL,
	[AzureID] [uniqueidentifier] NULL,
	[textID] [nvarchar](128) NULL
) ON [PRIMARY]
GO

ALTER TABLE [dbo].[Employees] ADD  CONSTRAINT [DF_Employees_InternalGUID]  DEFAULT (newid()) FOR [InternalGUID]
GO

Pasos siguientes