El objetivo de este documento es guiarle a través de la instalación de la herramienta de sincronización de usuarios para automatizar el proceso de administración de usuarios.

la herramienta de sincronización de usuarios es un servicio de línea de comandos que mueve la información de usuarios y grupos del sistema de directorios empresarial de su organización (por ejemplo, un Active Directory u otro sistema LDAP) al directorio de su organización en Adobe Admin Console. Cada vez que se ejecuta la herramienta de sincronización de usuarios, esta busca las diferencias entre la información de usuario y de grupo en los dos sistemas y actualiza el directorio de Adobe para que coincida con la información de su directorio.

Este documento proporciona instrucciones paso a paso para conectar un sistema de Active Directory con Adobe Admin Console. Esta es una de las principales combinaciones que utilizan nuestros clientes en los segmentos de pymes y educación primaria y secundaria. la herramienta de sincronización de usuarios es flexible y puede utilizarse para interactuar con la mayoría de los sistemas de directorio y LDAP. Si utiliza un sistema de directorios que no sea Active Directory, las instrucciones en este documento no se pueden aplicar directamente. Realice los ajustes necesarios. Para obtener más información, consulte la Guía de configuración y éxito.

Antes de comenzar

Necesita la siguiente información sobre su sistema LDAP. Si no tiene esta información, póngase en contacto con su administrador de TI.

  • Nombre del controlador de dominio (o su IP, si es fijo) y puerto.
  • Nombre de usuario y contraseña para una cuenta de servicio que la herramienta puede usar para la extracción de usuarios desde su LDAP (acceso de solo lectura).
  • DN base, que es el punto desde donde el servidor busca usuarios; debe ser lo suficientemente amplio como para permitir el descubrimiento de todos los usuarios y grupos que necesitan ser sincronizados.
  • Nombres de grupos que forman parte de la sincronización.
  • El atributo LDAP más adecuado para correo o nombre de usuario para todos los usuarios que tienen que crearse en Admin Console.
  • (Opcional) Es posible que también necesite una consulta LDAP personalizada que seleccione el conjunto de usuarios que se sincronizarán con Adobe si los filtros predeterminados no cubren los requisitos.
Active Directory

El par de claves se utiliza para firmar un JWT y comprobar su legitimidad en la obtención del proceso de access_token. Para recibir ayuda con este proceso, póngase en contacto con su equipo de seguridad, si es necesario.

Sugerencias de certificado:

  • Su propio CA puede firmar el certificado público (presente un CSR si es necesario); también se aceptan los certificados autofirmados
  • La clave privada debe ser RSA: 2048 bits por minuto
  • El certificado público debe tener una extensión .crt
  • Firmar mediante SHA-256
  • Validez de la clave pública: se recomiendan tres años, pero lo decidirá su política de seguridad interna

Crear un certificado autofirmado

Para realizar pruebas y configuraciones, también puede utilizar un certificado autofirmado usando openssl. En Mac OS o Linux, es posible que openssl esté incluido de manera predeterminada. En Windows, agregue el soporte de openssl por separado (por ejemplo, Cygwin
Para crear un certificado autofirmado, siga estos pasos:

  1. Para macOS o Linux, abra Terminal.
    Para Windows, abra el programa que ofrece soporte de openssl (Cygwin, cmd u otro).

  2. Ejecute el siguiente comando:

    openssl req -x509 -sha256 -nodes -days 1095 -newkey rsa:2048 -keyout private.key -out certificate_pub.crt
    Certificado digital
  3. Cuando se complete la generación de la clave privada, se le solicitará que proporcione información adicional para crear un nombre distintivo para la clave pública. Puede aceptar los valores predeterminados o introducir uno que sea relevante. Para dejar vacío un campo, introduzca "." (un carácter de punto).

    Certificado digital

El certificado público y los archivos de clave privada se almacenan en las ubicaciones predeterminadas:

Windows: C:\cygwin64\inicio\<su_nombre__de_usuario>

macOS: /Usuarios/<su_nombre__de_usuario>

Si está pensando en instalar la herramienta de sincronización de usuarios en su equipo, asegúrese de que cumpla los siguientes requisitos:

  • Tiene acceso a Internet y a los servicios de directorio, como LDAP o AD.
  • Está protegido y es seguro (sus credenciales administrativas se almacenan allí y también se puede acceder a ellas).
  • Tiene una disponibilidad ininterrumpida, es fiable y tiene una función de copia de seguridad y restauración.
  • Puede enviar correos electrónicos para permitir que la herramienta de sincronización de usuarios envíe informes a los administradores.
  • Si es un equipo Windows, tiene un procesador de 64 bits.

En caso contrario, tendrá que trabajar con el departamento de TI para identificar un servidor de este tipo y obtener acceso a él.

Asegúrese de haber creado los directorios para su organización y de crear los perfiles de productos y grupos de usuarios en Adobe Admin Console.

Configurar el servidor

Para configurar una integración adobe.io, haga lo siguiente:

  1. Inicie sesión en Adobe I/O Console, seleccione su organización en la lista desplegable y haga clic en Nueva integración.

    Nueva integración
  2. En el asistente Crear una nueva integración, seleccione Acceder a una API y haga clic en Continuar.

    Screenshot_3
  3. Seleccione API de administración de usuarios en Servicios de Adobe, y haga clic en Continuar. En la pantalla que aparece a continuación, haga clic de nuevo en Continuar.

    Untitled-2
  4. Introduzca un nombre y una descripción para la integración y cargue el archivo de certificado de clave pública. Haga clic en Crear integración.

    La integración se creará.

    Crear integración
  5. Para ver los detalles de la integración, haga clic en Ir a la información sobre la integración.

    Información sobre la integración

Esta información sobre la integración será necesaria para configurar los archivos de la herramienta de sincronización de usuarios más adelante.

  1. Cree una carpeta llamada user_sync_tool en una ubicación en la unidad donde los usuarios con los permisos necesarios puedan acceder a su contenido.

  2. Acceda a GitHub y localice la etiqueta Versión más reciente.

    En esta versión, busque y expanda los Activos. A continuación, localice y descargue:

    • El archivo examples.zip
    • El .zip de la herramienta de sincronización de usuarios en la lista que coincide con su tipo de sistema operativo y la versión de Python

    Nota:

    El nombre del archivo contiene el tipo de sistema operativo en el que funciona y también con qué versión de Python se creó. Por ejemplo, user-sync-vX.Y-win64-py368.zip es una versión Windows, creada con Python 3.6.8 (64 bit). 
    Si no tiene una versión de Python instalada en el sistema, intente hacer coincidir o instalar la versión con la que se creó herramienta.

  3. Descomprima examples.zip, navegue a los archivos de configuración básicos y copie estos archivos en la carpeta user_sync_tool: connector-ldap.yml, connector-umapi.yml y user-sync-config.yml.

  4. Extraiga el archivo user-sync.pex del otro archivo ZIP y colóquelo en la misma carpeta user_sync_tool.

  5. Localice la private.key incluida en el certificado público y muévala a la misma carpeta user_sync_tool. Ahora, la lista completa de archivos se convierte en:

    • connector-ldap.yml
    • connector-umapi.yml
    • private.key
    • user-sync.pex
    • user-sync-config.yml

  1. Realicemos la instalación de Python 3.6.8 (descargue el Programa de instalación ejecutable de Windows x86-64 y ejecútelo).

  2. Marque la casilla de verificación Agregar Python 3.6 a PATH y seleccione Personalizar la instalación.

    Instalar Python
  3. En la pantalla Funciones opcionales, haga clic en Siguiente. En la pantalla Opciones avanzadas, seleccione la casilla de verificación Instalar para todos los usuarios y haga clic en Instalar.

    Instalar Python
  4. Una vez completada la instalación, si ve una opción para desactivar el límite de longitud de ruta, selecciónelo antes de cerrar la ventana de instalación.

  5. Abra el símbolo del sistema y ejecute el siguiente comando:

    python --version

    Si Python se agrega correctamente a PATH, la línea de comando anterior devuelve la versión; de lo contrario, devolverá un error.

Configurar la sincronización de usuarios

  1. Edite el archivo connector-ldap.yml con un editor de texto especializado.

  2. Introduzca los valores de nombre de usuario, contraseña, host y base_dn.

    Archivo de configuración de acceso a directorios
  3. Establezca search_page_size como 200.

  4. Aunque en la mayoría de los casos valdrían los filtros predeterminados. Si necesita una consulta LDAP personalizada para la extracción de un conjunto de usuarios, modifique el parámetro de configuración all_users_filter.

  5. Compruebe el resto de las configuraciones no comentadas y a qué atributos de LDAP apuntan. Cámbielos según sus necesidades.

    Algunas implementaciones tienen una configuración de inicio de sesión basada en nombre de usuario (el campo Nombre de usuario en Admin Console para un usuario determinado no es un tipo de valor de correo electrónico). 

    En este caso, habilite también la siguiente línea (elimine el carácter #):
    user_username_format: {sAMAccountName}

    Reemplace sAMAccountName con el atributo correcto si no es el que tiene que usar.

  1. Edite el archivo conector-umapi.yml. Este archivo contiene información de acceso a su organización de Adobe.

  2. Introduzca la siguiente información de la integración de adobe.io que haya creado con anterioridad:

    • org_id
    • api_key
    • client_secret
    • tech_acct
  3. Asegúrese de que priv_key_path contenga el nombre exacto de la clave privada en la carpeta user_sync_tool. 
    Si la clave privada está en la misma carpeta que el resto de los archivos UST, priv_key_path solo puede contener el nombre del archivo; funciona como una ruta de acceso relativa.

    Credenciales de UMAPI Adobe

Si el directorio no enumera un país para cada usuario, puede establecer un país de forma predeterminada.

  1. Edite el archivo user-sync-config.yml.

  2. Elimine el símbolo # de la línea de código de país predeterminado e introduzca el código de país apropiado. Por ejemplo:

    default_country_code: US

    Nota:

    El código de país es obligatorio para los Federated ID y se recomienda para los Enterprise ID. Si no se proporciona para los Enterprise ID, se pedirá a los usuarios que elijan un país cuando inicien sesión por primera vez.

Esta sección define qué grupos de LDAP deben tener un grupo de usuarios o PLC correspondientes en Admin Console.

El objetivo aquí es proporcionarle a la herramienta una fuente de grupos o usuarios para que pueda coincidir con los mismos abonados en los grupos o PLC del lado de Admin Console.

  1. Edite la asignación de grupos en el archivo user-sync-config.yml.

  2. Para cada grupo de directorios que deba asignarse a un grupo de usuarios o perfil de productos de Adobe, añada una entrada en la sección grupos. Por ejemplo:

    groups:
        - directory_group: LDAP_group_name_goes_here
          adobe_groups:
            - Adobe_group_name_goes_here
        - directory_group: LDAP_group_name_goes_here
          adobe_groups:
            - Adobe_group_name_goes_here

    Nota:

    La asignación de grupos se puede basar en los grupos de usuarios o en los perfiles de productos de Adobe, pero no en los nombres de los productos. Y puede asignar un grupo de directorios a más de un grupo de usuarios o perfil de productos de Adobe.

Para evitar la eliminación accidental de la cuenta si hay una configuración incorrecta u otro problema, puede decidir un límite del número máximo de eliminaciones de cuenta que se pueden esperar en su sincronización diaria.

  1. Para cambiar el límite, busque max_adobe_only_users en el archivo user-sync-config.yml.

  2. Si espera que el número de eliminaciones de cuenta sea mayor que el valor de max_adobe_only_users establecido entre las ejecuciones de la herramienta de sincronización de usuarios, aumente el valor para cubrir todas las eliminaciones de cuenta.

    Nota:

    Si el número de cuentas que se va a eliminar es mayor que el valor de max_adobe_only_users, la herramienta no procesaría ninguna eliminación de cuenta. Aparece una entrada crítica en el registro que anuncia que ha llegado a ese límite.

    Este límite no afecta las acciones de creación.

Hay situaciones en las que algunas cuentas deben excluirse de la sincronización. Esto se puede lograr editando el archivo user-sync-config.yml.
La herramienta ofrece tres características de exclusión: por tipo de identidad, por nombre de grupo y por expresión regular.
Cualquier cuenta encontrada en Admin Console que se ajuste al menos a uno de los criterios mencionados está protegida contra las acciones de eliminación (del grupo, de la organización).

Se recomienda tener AdobeIDs para los administradores del sistema en Admin Console y excluirlos a través de excluir mediante exclude_identity_types: adobeID

Por ejemplo:

adobe_users:
  exclude_identity_types:
    - adobeID           # adobeID, enterpriseID o federatedID
  exclude_adobe_groups:
    - adobe_group_name  # sus abonados no deben ser eliminados por Sincronización de usuarios
    - other_group_name  # puede excluir varios grupos
  exclude_users:
    - ".*@ejemplo.com"
    - important_user@domain.com

La herramienta de sincronización de usuarios genera entradas de registro que se imprimen en una salida estándar y también se escriben en un archivo de registro. El conjunto de registro de los parámetros de configuración controla los detalles de dónde y qué cantidad de información de registro se obtiene.

  1. Para activar o desactivar el registro de archivos, edite el valor de log_to_file en el archivo user-sync-config.yml.

  2. Revise la configuración de registros y realice los cambios que desee. Para la configuración inicial se recomienda usar 
    log_to_file: True 
    file_log_level: debug

Alternativamente, si tiene un Windows Server, puede usar el asistente de configuración de la herramienta de sincronización de usuarios para configurarla.

El asistente de configuración de la herramienta de sincronización de usuarios es una herramienta de interfaz gráfica de usuario con la API de administración de usuarios (Adobe.io), el directorio de empresa (LDAP) y la configuración de sincronización. Proporciona ayuda basada en el contexto y enlaces a la documentación de la herramienta de sincronización de usuarios. Para obtener más información, consulte el asistente de configuración de la herramienta de sincronización de usuarios de Adobe.

Implementar y automatizar

Ahora que la herramienta de sincronización de usuarios está configurada en su servidor o equipo, puede comprobar si funciona como se esperaba. Para solucionar los problemas comunes al ejecutar la herramienta de sincronización de usuarios, consulte sugerencias para resolver problemas comunes.

  1. Abra el comando del sistema.
  2. Con el siguiente comando, vaya a la carpeta user_sync_tool.

    cd path/to/user_sync_tool
  3. Para comprobar que su configuración se ha completado, ejecute los siguientes comandos:

    Para Windows:

    python user-sync.pex -v
    python user-sync.pex -h

    Para UNIX:

    ./user-sync –v
    ./user-sync –h

    -v informa de la versión, -h proporciona ayuda sobre los argumentos de la línea de comandos.

  4. En el modo de prueba, ejecute una sincronización limitada a los grupos asignados nombrados en el archivo de configuración, excluyendo las cuentas del lado de Adobe existentes.

    python user-sync.pex -t --users mapped --process-groups --adobe-only-user-action exclude

    El comando anterior sincroniza solo a los usuarios del grupo asignado especificado en user-sync-config.yml. Si los usuarios no existen en Admin Console, se intentará crearlos y agregarlos a cualquier grupo asignado a sus grupos de directorios.

    Al ejecutar la herramienta de sincronización de usuarios en modo de prueba (-t), solo trata de crear el usuario, pero no lo hace en realidad. La opción --adobe-only-user-action exclude evita que las cuentas de usuario que ya existen en la organización de Adobe se eliminen.

  5. Aunque invocation_defaults establece los argumentos predeterminados con los que se ejecuta herramienta, puede anularlos mencionándolos en la línea de comandos. En el modo de prueba, ejecute una sincronización limitada a los grupos asignados nombrados en el archivo de configuración, eliminando las cuentas adicionales que se encuentran en el lado de Adobe y que no se encuentran en la extracción de LDAP.

    python user-sync.pex -t --users mapped --process-groups --adobe-only-user-action remove

    -t

    ejecutar una simulación, no una sincronización real, y ver qué sucedería.

    --users-mapped

    extraer usuarios de LDAP que son los resultados de all_user_filter y abonados de los nombres de directory_group proporcionados en el archivo de configuración.

    --process-groups

    agregar usuarios de los grupos de usuarios o PLC del lado de Adobe o eliminarlos, en función de que la cuenta sea o no abonado de los grupos asignados de LDAP.

    --adobe-only-user-action remove

    cualquier cuenta que se encuentre en el lado de Adobe se elimina del menú Usuarios y los derechos se eliminan si no se encuentran en la extracción de LDAP y no se excluyen de la sincronización.

    Obtenga más información sobre los parámetros de comando aquí.

    Lea sobre otros escenarios de uso aquí.

Si todas las pruebas se ejecutan correctamente, ya puede realizar una ejecución completa (sin la marca del modo de prueba).

Nota:

  • Las líneas de comando proporcionadas son solo ejemplos y pueden no cubrir la totalidad de los casos de uso.
  • La sincronización inicial puede tardar de segundos a horas, dependiendo de la cantidad de cuentas que se sincronizan. Se crean aproximadamente 250 usuarios cada 1,5-2 minutos (incluido el tiempo de espera).
  • Se esperan mensajes del código de advertencia 429 de tiempo de espera de UMAPI. La herramienta maneja el mecanismo de reintento.

La herramienta de sincronización de usuarios se puede ejecutar manualmente o puede configurar la automatización para que se ejecute una o varias veces al día de forma automática.

Nota:

Si tiene un análisis de registro y un sistema de alertas disponible, organice el registro de la herramienta de sincronización de usuarios para enviarlo al sistema de análisis de registro y configure las alertas si en el registro aparecen errores o mensajes importantes.

  1. Para extraer entradas de registro relevantes para obtener un resumen, cree un archivo por lotes en la carpeta user_sync_tool que llamará a la herramienta de sincronización de usuarios y la conectará con un escaneo. Por ejemplo, cree un archivo run_sync.bat con contenido como:

    cd path/to/user-sync-folder
    python user-sync.pex --users file example.users-file.csv --process-groups | findstr /I "==== ----- WARNING ERROR CRITICAL Number" > temp.file.txt
    rem email the contents of temp.file.txt to the user sync administration
    your-mail-tool –send file temp.file.txt
  2. Opcionalmente, configure una herramienta de línea de comandos de correo electrónico.

    No hay una herramienta de línea de comandos de correo electrónico estándar en Windows, pero hay varias disponibles en el mercado en las que puede introducir sus opciones específicas de línea de comandos.

  3. Configure el programador de tareas de Windows para que ejecute la herramienta de sincronización de usuarios.

    Por ejemplo, el siguiente código ejecuta la herramienta de sincronización de usuarios todos los días a partir de las 4:00 p. m.

    C:\> schtasks /create /tn "Adobe User Sync" /tr path_to_bat_file/run_sync.bat /sc DAILY /st 16:00