Gestión de Oracle Access Governance Agent para integraciones indirectas

En algunos casos, un sistema orquestado no tiene una conexión directa a Oracle Access Governance y necesita un agente para activar la transferencia a datos entre Oracle Access Governance y el sistema orquestado.

Registro y descarga del agente de Oracle Access Governance

Para permitir que un sistema orquestado se conecte a Oracle Access Governance, debe introducir los detalles de la integración y las credenciales para el sistema y crear un agente específico para su entorno.

  1. En un explorador, vaya a la página inicial de servicio Oracle Access Governance e conéctese como usuario con el rol Administrador.
  2. En la página inicial de servicio de Oracle Access Governance, haga clic en el icono Menú de navegación, seleccione Administración de servicio y, a continuación, Sistemas orquestados.
  3. Seleccione el botón Agregar un sistema conectado para navegar a la página Agregar n sistema orquestado para iniciar la configuración.
  4. En el paso Seleccionar sistema, seleccione el sistema que desea integrar con Oracle Access Governance y, a continuación, haga clic en Siguiente.
  5. En el paso Introducir detalles, introduzca los detalles básicos, como el nombre y la descripción, del sistema orquestado y, a continuación, haga clic en Siguiente.
  6. En el paso Configurar, introduzca los detalles de conexión del sistema orquestado:
    Nota

    Los detalles de integración variarán según el tipo de sistema orquestado. Para obtener detalles específicos relacionados con cada sistema orquestado, consulte el artículo Integraciones soportadas con Oracle Access Governance.
  7. Haga clic en Siguiente. Se muestra un mensaje para descargar el agente. Seleccione el enlace Descargar y descargue el archivo zip del agente para el entorno en el que se ejecutará el agente.
  8. Verifique el contenido del paquete del archivo zip descargado.

    El contenido del paquete de agentes será similar al siguiente:

    agent-package-<version>.zip
        - config.json
        - wallet
            - cwallet.sso
            - cwallet.sso.lck
       - agent-lcm
            - idm-agcs-agent-lcm

    El paquete de agente no contiene la configuración de integración del sistema orquestada. Se conecta a la instancia de servicio de Oracle Access Governance y recupera la información según sea necesario. Esto significa que no es necesario descargar ni volver a instalar el agente para posteriores cambios de configuración de integración.

Requisitos

Requisitos para la instalación y ejecución de una agente.

Se deben cumplir los siguientes requisitos para instalar y ejecutar el agente.

  1. El script de gestión de agente soporta docker y podman como el tiempo de ejecución de contenedor. El script de gestión de agentes detecta de forma automática el tiempo de funcionamiento del contenedor. Si ambos están presentes, se selecciona podman.
  2. El tiempo de ejecución del contenedor (docker/podman) se debe configurar para que se ejecute como un usuario no raíz, el mismo que el que se utiliza para instalar el agente.
  3. Utilidades:
    El agente requiere las siguientes utilidades de sistema operativo:
    • descomprimir
    • sed
    • torcido
    • crontab
    Nota

    El usuario de instalación del agente debe tener permiso para utilizar cada una de estas utilidades.
  4. JDK: el agente necesita JDK 11.0.x.
  5. Active los procesos para el usuario del sistema operativo que inicie el agente en 'linger' después de terminar la sesión del usuario. Si esta opción no está activada, al terminar la sesión del usuario, el proceso de agente se detendrá y verá errores al intentar comunicarse entre Oracle Access Governance, el agente y el sistema orquestado.
    • Para comprobar si linger está activado para el usuario del sistema operativo, compruebe si hay un archivo con el mismo nombre que el usuario en el directorio /var/lib/systemd/linger. Si el archivo existe, esta opción está activada:
      ls /var/lib/systemd/linger/oracle/<myuser>
    • Para activar linger para el usuario del sistema operativo, active el comportamiento systemd linger:
      loginctl enable-linger <myuser>
  6. El espacio en disco mínimo necesario para el agente debe ser:
    • 4 GB de espacio libre para el directorio configurado como volumen para el agente.
    • 5 GB de espacio libre para la casa docker / podman.

    Los valores mínimos anteriores incluyen el espacio en disco consumido durante la actualización, en cuyo proceso se crea una copia de seguridad y se descarga y carga una nueva imagen de agente.

  7. Si SELinux está activado en el sistema host, defina el contexto de seguridad del volumen persistente utilizado por el agente ejecutando el siguiente comando:
    chcon -Rt svirt_sandbox_file_t <PV_Directory>

Ajuste de tamaño de máquina virtual/host

En las siguientes tablas se sugieren valores para ajustar el tamaño de la máquina virtuales o el host de agente de sistema orquestado para implantaciones a pequeña, mediana y gran escala.

Parámetro Descripción Pequeña escala Mediana escala Gran escala

Núcleos de CPU

Número de núcleos de CPU.

2

4

8

Memoria

Cantidad de memoria (GB)

16

32

64

Instalación de Oracle Access Governance Agent

Proceso paso a paso para instalar el agente de Oracle Access Governance con comandos de ejemplo para ejecutar:

Para instalar el agente descargado en el sistema local, realice los siguientes pasos:
  1. Descomprima el agente descargado en su ubicación local.

    El contenido del agente descomprimido debe ser:

    agent-package-<version>.zip
      - config.json
      - wallet
          - cwallet.sso
          - cwallet.sso.lck
      - container-image
          - agent.tar.gz
  2. Ejecute el script de gestión con los siguientes parámetros:
    curl https://raw.githubusercontent.com/oracle/docker-images/main/OracleIdentityGovernance/samples/scripts/agentManagement.sh -o agentManagement.sh ; sh agentManagement.sh \
    --volume <PERSISTENT_VOLUME_LOCATION> \
    --agentpackage <PACKAGE_FULL_PATH> \
    --install

    Un ejemplo con la configuración por defecto sería similar al siguiente:

    curl https://raw.githubusercontent.com/oracle/docker-images/main/OracleIdentityGovernance/samples/scripts/agentManagement.sh -o agentManagement.sh ; sh agentManagement.sh \
    --volume /access-governance/agent-management/volume \
    --agentpackage /access-governance/agent-management/agent-package-<version>.zip \
    --agentid myagent \
    –-install
    

    Un ejemplo con configuración personalizada sería similar al siguiente:

    curl https://raw.githubusercontent.com/oracle/docker-images/main/OracleIdentityGovernance/samples/scripts/agentManagement.sh -o agentManagement.sh ; sh agentManagement.sh \
    --volume /access-governance/agent-management/volume \
    --agentpackage /access-governance/agent-management/agent-package-<version>.zip \
    --agentid myagent \
    --config /access-governance/agent-management/config.properties \
    –-install
    
    Consejo

    Si se producen problemas durante la operación de copiar y pegar o un error al ejecutar un script, como un error de formato no válido, puede intentar insertar manualmente un guión doble ("-", el valor ASCII para el guión es 45).
  3. Inicie el agente con el siguiente comando:
    curl https://raw.githubusercontent.com/oracle/docker-images/main/OracleIdentityGovernance/samples/scripts/agentManagement.sh -o agentManagement.sh ; sh agentManagement.sh \
    --volume <PERSISTENT_VOLUME_LOCATION> \
    --start

    Por ejemplo:

    curl https://raw.githubusercontent.com/oracle/docker-images/main/OracleIdentityGovernance/samples/scripts/agentManagement.sh -o agentManagement.sh ; sh agentManagement.sh \
    --volume /access-governance/agent-management/volume \
    --start

Verificación del agente

Detalla cómo verificar la instalación y El funcionamiento del agente de sistema orquestado.

Para verificar la instalación del agente del sistema orquestado, realice los siguientes pasos:
  1. En la consola de Oracle Access Governance, seleccione el icono de Menú de navegaciónpara mostrar el menú de navegación.
  2. En la consola de Oracle Access Governance, seleccione Administración de servicio → Sistemas orquestados en el menú de navegación.
  3. En la pantalla Sistemas orquestados, el sistema orquestado muestra el estado Esperando la integración inicial. Haga clic en Gestionar → Lista de comprobación de resolución de problemas.
  4. El log de actividad de la parte inferior de la página mostrará el estado de la operación Validar Pendiente mientras el agente se active. Si el agente no aparece, compruebe los logs de instalación y funcionamiento del agente para detectar cualquier incidencia.
  5. Una vez que aparezca el agente, el estado de la operación Validar se mostrará como Correcto.

Uso de ejemplo del agente

Muestra ejemplos de uso del script de gestión de agente.

Una vez que haya instalado y verificado correctamente el agente, puede empezar a gestionar el ciclo de vida. El script agentManagement.sh proporciona soporte para las operaciones de inicio, parada, reinicio, desinstalación y cambio de versión.

Inicio del agente

Inicie el agente con el siguiente comando:

curl https://raw.githubusercontent.com/oracle/docker-images/main/OracleIdentityGovernance/samples/scripts/agentManagement.sh -o agentManagement.sh ; sh agentManagement.sh \
--volume <PERSISTENT_VOLUME_LOCATION> \
--start

Por ejemplo:

curl https://raw.githubusercontent.com/oracle/docker-images/main/OracleIdentityGovernance/samples/scripts/agentManagement.sh -o agentManagement.sh ; sh agentManagement.sh \
--volume /access-governance/agent-management/volume \
--start

Parada del agente

Pare el agente con el siguiente comando:

curl https://raw.githubusercontent.com/oracle/docker-images/main/OracleIdentityGovernance/samples/scripts/agentManagement.sh -o agentManagement.sh ; sh agentManagement.sh \
--volume <PERSISTENT_VOLUME_LOCATION> \
--stop

Por ejemplo:

curl https://raw.githubusercontent.com/oracle/docker-images/main/OracleIdentityGovernance/samples/scripts/agentManagement.sh -o agentManagement.sh ; sh agentManagement.sh \
--volume /access-governance/agent-management/volume \
--stop

Reinicio del agente

Reinicie el agente con el siguiente comando:

curl https://raw.githubusercontent.com/oracle/docker-images/main/OracleIdentityGovernance/samples/scripts/agentManagement.sh -o agentManagement.sh ; sh agentManagement.sh \
--volume <PERSISTENT_VOLUME_LOCATION> \
--restart

Por ejemplo:

curl https://raw.githubusercontent.com/oracle/docker-images/main/OracleIdentityGovernance/samples/scripts/agentManagement.sh -o agentManagement.sh ; sh agentManagement.sh \
--volume /access-governance/agent-management/volume \
--restart

Desinstalación del agente

Desinstale el agente con el siguiente comando:

curl https://raw.githubusercontent.com/oracle/docker-images/main/OracleIdentityGovernance/samples/scripts/agentManagement.sh -o agentManagement.sh ; sh agentManagement.sh \
--volume <PERSISTENT_VOLUME_LOCATION> \
--uninstall

Por ejemplo:

curl https://raw.githubusercontent.com/oracle/docker-images/main/OracleIdentityGovernance/samples/scripts/agentManagement.sh -o agentManagement.sh ; sh agentManagement.sh \
--volume /access-governance/agent-management/volume \
--uninstall

Cambio de versión del agente

Cambie la versión del agente con el siguiente comando:

curl https://raw.githubusercontent.com/oracle/docker-images/main/OracleIdentityGovernance/samples/scripts/agentManagement.sh -o agentManagement.sh ; sh agentManagement.sh \
--volume <PERSISTENT_VOLUME_LOCATION> \
--upgrade

Por ejemplo:

curl https://raw.githubusercontent.com/oracle/docker-images/main/OracleIdentityGovernance/samples/scripts/agentManagement.sh -o agentManagement.sh ; sh agentManagement.sh \
--volume /access-governance/agent-management/volume \
--upgrade

Habilitar cambio de versión automático

Active la actualización automática con el siguiente comando:

curl https://raw.githubusercontent.com/oracle/docker-images/main/OracleIdentityGovernance/samples/scripts/agentManagement.sh -o agentManagement.sh;  sh agentManagement.sh \
--volume <PERSISTENT_VOLUME_LOCATION> \
--enableautoupgrade

Por ejemplo:

curl https://raw.githubusercontent.com/oracle/docker-images/main/OracleIdentityGovernance/samples/scripts/agentManagement.sh -o agentManagement.sh;  sh agentManagement.sh \
--volume /access-governance/agent-management/volume \
--enableautoupgrade

Desactivar el cambio de versión automático

Realice este paso solo si es absolutamente necesario, ya que puede provocar fallos en la comunicación entre el agente y el servicio Oracle Access Governance. Si realiza este paso y ve fallos, actualice inmediatamente el agente siguiendo los pasos mencionados en el ejemplo de Actualización del Agente en Uso de Ejemplo de Agente.

Desactive la actualización automática con el siguiente comando:

curl https://raw.githubusercontent.com/oracle/docker-images/main/OracleIdentityGovernance/samples/scripts/agentManagement.sh -o agentManagement.sh;  sh agentManagement.sh \
--volume <PERSISTENT_VOLUME_LOCATION> \
--disableautoupgrade

Por ejemplo:

curl https://raw.githubusercontent.com/oracle/docker-images/main/OracleIdentityGovernance/samples/scripts/agentManagement.sh -o agentManagement.sh;  sh agentManagement.sh \
--volume /access-governance/agent-management/volume \
--disableautoupgrade

Soporte de Jar Personalizado

Al realizar la integración con Oracle Access Governance, algunos sistemas orquestados pueden necesitar jar personalizados. Por ejemplo, para comunicarse con la base de datos DB2 y MYSQL, se necesita el archivo jar del controlador correspondiente. Utilice los siguientes pasos para cargar el archivo jar personalizado.
  1. Descargue el archivo jar del controlador y colóquelo en la ruta de acceso customJarsDirectory como se especifica en config.json. Por ejemplo, config.json puede contener una entrada, customJarsDirectory : /app/data/customJars, donde /app es el volumen del agente.
  2. Calcule la suma de comprobación del archivo jar del controlador descargado mediante SHA-512.
  3. En la consola de Oracle Access Governance, vaya a Administración de servicios y, a continuación, a Sistemas orquestados.
  4. En la página Sistemas conectados, seleccione Gestionar integración para el sistema orquestado.
  5. En Configuración, seleccione el botón Gestionar en el mosaico Configuración de integración.
  6. Actualice la configuración del sistema orquestada en el campo Custom Jar Details (Detalles de tarro personalizados). Proporcione el nombre del archivo jar del controlador y el total de control con el formato <jarName>::<checksum>.
    Para el sistema conectado DB2, muestre el valor en Custom Jar Details
    db2jcc.jar::c8520f145b428b1133b771bb2c70a6f0f546c9f0655f9de5de2e7b64d5ede786911ad50b543846154fe373dead78d38fb6dded560e0de4c4e8ccbbf0a06b6c1e
  7. Haga clic en Guardar.

Operaciones de gestión del agente

Muestra detalles de las operaciones que el agente puede realizar y descripciones de parámetros relacionados.

El agente de sistema orquestado se puede gestionar mediante el script agentManagement.sh. Este script se puede descargar de GitHub. El script soporta docker y podman, y detecta automáticamente el tiempo de ejecución del contenedor disponible. Si ambos están disponibles, el script utiliza podman.

Operaciones

Operación Descripción Información adicional

--install

  • Instala el paquete de agente descargado en el volumen especificado.
  • Carga la imagen de contenedor.

Utilice --config para utilizar una configuración personalizada.

--start

  • Inicia el contenedor del agente.
  • Inicia el daemon del agente.

Utilice --newcontainer para iniciar un nuevo contenedor.

Utilice --config para utilizar una configuración personalizada.

--stop

  • Para el daemon del agente.
  • Para el contenedor del agente.

--restart

  • Para el daemon del agente.
  • Para el contenedor del agente.
  • Elimina el contenedor del agente si su indicador newcontainer está definido en true.
  • Inicia el contenedor del agente.
  • Inicia el daemon del agente.

--uninstall

  • Para el daemon del agente.
  • Elimina el contenedor del agente.
  • Limpia el volumen.

--upgrade

  • Descomprime el nuevo agent-package.zip en una ubicación temporal.
  • Valida el contenido del paquete.
  • Carga la imagen desde el nuevo archivo zip.
  • Inicia un contenedor temporal mediante la nueva imagen y configuración.
  • Si el contenedor temporal no tiene ninguna incidencia, pare el contenedor.
  • Para el contenedor existente.
  • Copia la nueva configuración de la ubicación temporal a la ubicación actual. Esto conserva las personalizaciones.
  • Inicia el agente con la nueva imagen y configuración.
  • Inicia el daemon del agente.

Los siguientes cambios requieren una actualización.

  • Cambio en la configuración config.json)
  • Cambio de grupo de conectores
  • Cambio en la cartera
  • Cambio de imagen de agente

Los siguientes cambios dispararán una operación de reconfiguración gestionada por el marco del agente.

  • Conector (la misma versión de plantilla)
  • Conector (diferente versión de plantilla)

Para obtener más información, consulte Actualización de un agente.

--status

Muestra los siguientes detalles del agente:
  • ID de agente
  • Tiempo de ejecución y versión de contenedor
  • Paquete de agente
  • Versión del agente
  • Ubicación de instalación
  • Estado del agente

--enableautoupgrade

Activa la actualización automática realizando las siguientes tareas:

  • Configura un trabajo cron para detectar actualizaciones para cualquier cambio en los parámetros de conectividad de destino o en el código de grupo de conectores.
  • El trabajo cron se ejecuta cada 30 minutos y actualiza el agente automáticamente si es necesario.

--disableautoupgrade

Desactiva las actualizaciones automáticas eliminando el trabajo cron de actualización automática.

Parámetros del Agente

Parámetros

Nombre de parámetro Descripción Obligatorio Valor por defecto Argumento Argumento abreviado

__AGENT_ID__

ID de agente con el que se ejecutará el contenedor de agente.

No

agent-<hostname>-<timestamp>

--agentid

-ai

Ubicación de paquete de agente Ubicación del paquete de agente local con el nombre del paquete.

--agentpackage

-ap

Volumen

Directorio para mantener los datos del agente, como la configuración, la cartera y los logs.

--volume

-pv

Nuevo contenedor con inicio y reinicio

Cree un nuevo contenedor. Este parámetro no necesita un valor.

No

--newcontainer

-nc

Configuración personalizada

Proporcione configuraciones personalizadas mediante un archivo de propiedades.

No

--config

-c

Cambio de versión automático

Utilice este parámetro con la operación de instalación para configurar la actualización automática del agente.

No

true

--autoupgrade

-au

La configuración personalizada se proporciona al script mediante el archivo config.properties con el siguiente formato:

idoConfig.httpClientConfiguration.connectionPool.maxPerRoute=15
idoConfig.httpClientConfiguration.connectionPool.maxTotal=15
idoConfig.httpClientConfiguration.connectTimeoutInSeconds=300
idoConfig.httpClientConfiguration.keepAliveTimeoutInSeconds=300
idoConfig.httpClientConfiguration.readResponseTimeoutInSeconds=300
idoConfig.httpClientConfiguration.proxyUri=
idoConfig.httpClientConfiguration.proxyUserName=
idoConfig.httpClientConfiguration.proxyUserPassword=
idoConfig.logLevel=info
idoConfig.maxJobRunningTimeInMinutes=180
idoConfig.numberOfPartition=3
idoConfig.numberOfOperationsPerPoll=5
idoConfig.numberOfOperationsWorkerThread=5
idoConfig.pollPauseTimeInMills=500
idoConfig.heartBeatIntervalInSeconds=30
idoConfig.sparkMaxResultSizeInGB=2
idoConfig.sparkExecutorMemoryInGB=2

Ajuste de la configuración de tiempo de ejecución

En la siguiente tabla se muestran los parámetros para ajustar de forma acotada la configuración de tiempo del agente de sistema orquestado y se sugieren valores específicos para implantaciones pequeñas, medianas y grandes.

Los detalles de cómo configurar estos parámetros se pueden encontrar en Parámetros de agente.

Nota

Los límites flexibles para el tamaño son:
  • Pequeña: identidades/cuentas 10-20k y datos asociados
  • Medio: 40-50k identidades/cuentas y datos asociados
  • Grande: más allá de las identidades/cuentas 50k y los datos asociados
Parámetro Descripción Pequeña escala Mediana escala Gran escala

idoConfig.sparkMaxResultSizeInGB

Límite del tamaño total de los resultados serializados de todas las particiones para cada acción (por ejemplo, recopilar) en bytes. Debe ser de al menos 1 M o 0 para ilimitado. Los trabajos se cancelarán si el tamaño total supera este límite. Tener un límite alto puede causar errores de memoria insuficiente en el controlador (depende de spark.driver.memory y la sobrecarga de memoria de objetos en JVM). La configuración de un límite adecuado puede proteger el controlador frente a errores de memoria insuficiente.

2

5

7

idoConfig.sparkExecutorMemoryInGB

Cantidad de memoria adicional que se asignará por proceso de ejecutor en MiB a menos que se especifique lo contrario. Esta memoria tiene en cuenta aspectos como las sobrecargas de VM, las cadenas internas, otras sobrecargas nativas, etc.

2

5

7

idoConfig.numberOfPartition

Número de particiones.

3

5

7

Solución de Problemas de Oracle Access Governance Agent

Descubra cómo abordar los mensajes de error y otros problemas que pueda ver al configurar o utilizar Oracle Access Governance Agent.

Temas:

Cierre inesperado de agente debido a restricciones de recursos

Si comienza a alcanzar los límites de recursos en memoria, CPU o disco, es posible que el agente se cierre inesperadamente. Para que el agente vuelva a estar activo correctamente, debe reiniciar el agente después de rectificar el problema subyacente.

Solución: reinicie el agente mediante el comando restart para rectificar el problema subyacente.
curl https://raw.githubusercontent.com/oracle/docker-images/main/OracleIdentityGovernance/samples/scripts/agentManagement.sh -o agentManagement.sh ; sh agentManagement.sh \
--volume <PERSISTENT_VOLUME_LOCATION> \
--newcontainer \
--restart