Gestisci agente Oracle Access Governance per integrazioni indirette

In alcuni casi, un sistema orchestrato non dispone di una connessione diretta a Oracle Access Governance e richiede un agente per abilitare il trasferimento dei dati tra Oracle Access Governance e il sistema orchestrato.

Registrare e scaricare Oracle Access Governance Agent

Per consentire a un sistema orchestrato di connettersi a Oracle Access Governance, è necessario immettere i dettagli e le credenziali di integrazione per il sistema e creare un agente specifico per l'ambiente in uso.

  1. In un browser andare alla home page del servizio Oracle Access Governance e eseguire il login come utente con il ruolo applicazione Administrator.
  2. Nella home page del servizio Oracle Access Governance fare clic sull'icona Menu di navigazione e selezionare Amministrazione servizio, quindi Sistemi orchestrati.
  3. Selezionare il pulsante Aggiungi un sistema connesso per andare alla pagina Aggiungi sistema orchestrato e iniziare la configurazione.
  4. Nel passo Seleziona sistema selezionare il sistema da integrare con Oracle Access Governance, quindi fare clic su Successivo.
  5. Nel passo Immetti dettagli immettere i dettagli di base, ad esempio il nome e la descrizione, per il sistema orchestrato, quindi fare clic su Successivo.
  6. Nel passo Configura immettere i dettagli di connessione per il sistema orchestrato.
    Nota

    I dettagli dell'integrazione saranno diversi a seconda del tipo di sistema orchestrato. Per dettagli specifici relativi a ciascun sistema orchestrato, fare riferimento all'articolo Supported Integrations with Oracle Access Governance.
  7. Fai clic su Avanti. Viene visualizzato un messaggio per scaricare l'agente. Selezionare il collegamento Scarica e scaricare il file zip dell'agente nell'ambiente in cui verrà eseguito l'agente.
  8. Verificare il contenuto del package del file zip scaricato.

    Il contenuto del pacchetto agente sarà simile al seguente:

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

    Il package agente non contiene la configurazione di integrazione del sistema orchestrata. Si connette all'istanza del servizio Oracle Access Governance e recupera le informazioni necessarie. Ciò significa che non è necessario scaricare o reinstallare l'agente per le successive modifiche alla configurazione dell'integrazione.

Requisiti indispensabili

Prerequisiti per l'installazione e l'esecuzione di un agente.

Per installare ed eseguire un agente, è necessario soddisfare i prerequisiti riportati di seguito.

  1. Lo script di gestione dell'agente supporta docker e podman come runtime del contenitore. Lo script di gestione dell'agente rileva automaticamente il tempo di esecuzione del contenitore. Se sono presenti entrambi, viene selezionato podman.
  2. Il runtime del contenitore (docker/podman) deve essere configurato per essere eseguito come utente non root, lo stesso utilizzato per installare l'agente.
  3. Utility:
    L'agente richiede le seguenti utility del sistema operativo:
    • decompressione
    • sedile
    • awk;unix awk
    • crontab
    Nota

    L'utente dell'installazione dell'agente dovrebbe disporre dell'autorizzazione per utilizzare ciascuna di queste utility.
  4. JDK: agente richiede JDK 11.0.x.
  5. Abilita i processi per l'utente del sistema operativo che avvia l'agente su 'linger' dopo l'interruzione della sessione dell'utente. Se questa opzione non è abilitata, quando si termina la sessione dell'utente il processo agente verrà interrotto e verranno visualizzati errori durante il tentativo di comunicazione tra Oracle Access Governance, l'agente e il sistema orchestrato.
    • Per verificare se il linger è abilitato per l'utente del sistema operativo, verificare la presenza di un file con lo stesso nome dell'utente nella directory /var/lib/systemd/linger. Se il file esiste, questa opzione è abilitata:
      ls /var/lib/systemd/linger/oracle/<myuser>
    • Per abilitare il persister per l'utente del sistema operativo, abilitare il comportamento persistente del sistema:
      loginctl enable-linger <myuser>
  6. Lo spazio su disco minimo richiesto per l'agente deve essere:
    • 4 GB di spazio libero per la directory configurata come volume per l'agente.
    • 5 GB di spazio libero per la casa docker / podman.

    I valori minimi sopra riportati includono lo spazio su disco consumato durante l'aggiornamento, nel cui processo viene creato un backup e viene scaricata e caricata una nuova immagine dell'agente.

  7. Se SELinux è abilitato sul sistema host, impostare il contesto di sicurezza del volume persistente utilizzato dall'agente eseguendo il comando seguente:
    chcon -Rt svirt_sandbox_file_t <PV_Directory>

Dimensionamento della virtual machine/host

La tabella riportata di seguito suggerisce valori per il dimensionamento della VM o dell'host dell'agente di sistema orchestrato per implementazioni su piccola, media e grande scala.

Parametro Descrizione Piccola scala Media scala Grande scala

Memorie centrali CPU

Numero di memorie centrali CPU.

2

4

8

Memoria

Quantità di memoria (GB)

16

32

64

Installa Oracle Access Governance Agent

Processo dettagliato per installare Oracle Access Governance Agent con comandi di esempio da eseguire:

Per installare l'agente scaricato nel sistema locale, effettuare le operazioni riportate di seguito.
  1. Decomprimere l'agente scaricato nella posizione locale.

    Il contenuto dell'agente decompresso deve essere:

    agent-package-<version>.zip
      - config.json
      - wallet
          - cwallet.sso
          - cwallet.sso.lck
      - container-image
          - agent.tar.gz
  2. Eseguire lo script di gestione con i parametri riportati di seguito.
    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 esempio di configurazione predefinita potrebbe essere il seguente:

    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 esempio di configurazione personalizzata potrebbe avere l'aspetto seguente:

    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
    
    Suggerimento

    Se vengono rilevati problemi durante l'operazione di copia e incolla o si verifica un errore durante l'esecuzione di uno script, ad esempio un errore di formato non valido, è possibile provare a inserire manualmente un trattino doppio ("-", il valore ASCII per il trattino è 45).
  3. Avviare l'agente con il comando seguente:
    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

    Ad esempio:

    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

Verifica agente

Dettagli su come verificare l'installazione e il funzionamento dell'agente di sistema orchestrato.

Per verificare l'installazione dell'agente di sistema orchestrato, effettuare le operazioni riportate di seguito.
  1. In Oracle Access Governance Console selezionare l'icona Menu di navigazioneper visualizzare il menu di navigazione.
  2. In Oracle Access Governance Console selezionare Amministrazione servizio → Sistemi orchestrati dal menu di navigazione.
  3. Nella schermata Sistemi orchestrati, il sistema orchestrato mostra lo stato In attesa di integrazione iniziale. Fare clic su Gestisci → Elenco di controllo risoluzione problemi.
  4. Nel log attività nella parte inferiore della pagina verrà visualizzato lo stato dell'operazione di convalida, In sospeso, mentre l'agente viene visualizzato. Se l'agente non viene visualizzato, controllare i log di installazione e di operazione dell'agente per eventuali problemi.
  5. Una volta che l'agente sarà disponibile, lo stato dell'operazione Convalida verrà visualizzato come Operazione riuscita.

Uso di esempio agente

Visualizza esempi di utilizzo dello script di gestione dell'agente.

Dopo aver installato e verificato correttamente l'agente, è possibile iniziare a gestire il ciclo di vita. Lo script agentManagement.sh fornisce supporto per le operazioni di avvio, arresto, riavvio, disinstallazione e aggiornamento.

Avvia l'agente

Avviare l'agente con il comando seguente:

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

Ad esempio:

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

Arresta l'agente

Interrompere l'agente con il comando seguente:

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

Ad esempio:

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

Riavvia l'agente

Riavviare l'agente con il comando seguente:

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

Ad esempio:

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

Disinstalla l'agente

Disinstallare l'agente con il comando seguente:

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

Ad esempio:

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

Aggiorna l'agente

Si aggiorna l'agente con il comando seguente:

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

Ad esempio:

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

Abilita upgrade automatico

Abilitare l'aggiornamento automatico con il seguente 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

Ad esempio:

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

Disabilita upgrade automatico

Eseguire questo passo solo se assolutamente necessario, in quanto ciò può causare errori nella comunicazione tra l'agente e il servizio Oracle Access Governance. Se si esegue questo passo e vengono visualizzati errori, eseguire immediatamente l'upgrade dell'agente seguendo i passi indicati nell'esempio Aggiorna l'agente in Uso dell'esempio di agente.

Disabilitare l'aggiornamento automatico con il seguente 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

Ad esempio:

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

Supporto Jar personalizzato

Quando si esegue l'integrazione con Oracle Access Governance, alcuni sistemi orchestrati potrebbero richiedere jar personalizzati. Ad esempio, per comunicare con il database DB2 e MYSQL è necessario il relativo jar del driver. Per caricare il file jar personalizzato, attenersi alla procedura riportata di seguito.
  1. Scaricare il file jar del driver e posizionarlo nel percorso customJarsDirectory come specificato in config.json. Ad esempio, config.json può contenere una voce, customJarsDirectory : /app/data/customJars, dove /app è il volume dell'agente.
  2. Calcolare il checksum del file jar del driver scaricato utilizzando SHA-512.
  3. In Oracle Access Governance Console andare a Amministrazione servizi e quindi a Sistemi orchestrati.
  4. Nella pagina Sistemi connessi selezionare Gestisci integrazione per il sistema orchestrato.
  5. In Configurazioni, selezionare il pulsante Gestisci nella casella Impostazioni integrazione.
  6. Aggiornare la configurazione del sistema orchestrato nel campo Dettagli Jar personalizzati. Fornire il nome del file jar del driver e il checksum nel formato <jarName>::<checksum>.
    Per il sistema connesso DB2, valore di esempio in Dettagli Jar personalizzati
    db2jcc.jar::c8520f145b428b1133b771bb2c70a6f0f546c9f0655f9de5de2e7b64d5ede786911ad50b543846154fe373dead78d38fb6dded560e0de4c4e8ccbbf0a06b6c1e
  7. Fare clic su Salva.

Operazioni di gestione agente

Elenca i dettagli delle operazioni che l'agente può eseguire e le descrizioni dei parametri correlate.

L'agente di sistema orchestrato può essere gestito utilizzando lo script agentManagement.sh. Questo script può essere scaricato da GitHub. Lo script supporta docker e podman e rileva automaticamente il runtime del contenitore disponibile. Se sono disponibili entrambi, lo script utilizza podman.

Operazioni

Operation Descrizione Informazioni aggiuntive

--install

  • Installa il pacchetto dell'agente scaricato nel volume specificato.
  • Carica l'immagine del contenitore.

Utilizzare --config per utilizzare una configurazione personalizzata.

--start

  • Avvia il contenitore dell'agente.
  • Avvia il daemon dell'agente.

Utilizzare --newcontainer per avviare un nuovo contenitore.

Utilizzare --config per utilizzare una configurazione personalizzata.

--stop

  • Arresta il daemon dell'agente.
  • Arresta il contenitore dell'agente.

--restart

  • Arresta il daemon dell'agente.
  • Arresta il contenitore dell'agente.
  • Rimuovere il contenitore dell'agente se il flag newcontainer è impostato su true.
  • Avvia il contenitore dell'agente.
  • Avvia il daemon dell'agente.

--uninstall

  • Arresta il daemon dell'agente.
  • Rimuove il contenitore agente.
  • Pulire il volume.

--upgrade

  • Consente di estrarre il nuovo file agent-package.zip in una posizione temporanea.
  • Convalida il contenuto del pacchetto.
  • Carica l'immagine dal nuovo file zip.
  • Avvia un contenitore temporaneo utilizzando la nuova immagine e configurazione.
  • Se il contenitore temporaneo non presenta problemi, arrestare il contenitore.
  • Arrestare il contenitore esistente.
  • Copiare la nuova configurazione dalla posizione temporanea alla posizione corrente. In questo modo vengono conservate le personalizzazioni.
  • Avvia l'agente con la nuova immagine e configurazione.
  • Avvia il daemon dell'agente.

Le seguenti modifiche richiedono un aggiornamento.

  • Modifica nella configurazione config.json
  • Modifica bundle di connettori
  • Modifica nel wallet
  • Modifica dell'immagine dell'agente

Le modifiche riportate di seguito attiveranno un'operazione di riconfigurazione gestita dal framework dell'agente.

  • Connettore (stessa versione modello)
  • Connettore (versione modello diversa)

Per ulteriori informazioni, vedere Aggiornamento di un agente.

--status

Elenca i seguenti dettagli dell'agente:
  • ID agente
  • Runtime e versione dei container
  • Pacchetto agente
  • Versione agente
  • Posizione di installazione
  • Stato agente

--enableautoupgrade

Abilita l'aggiornamento automatico eseguendo le seguenti operazioni:

  • Imposta un job cron per rilevare gli upgrade per eventuali modifiche nei parametri di connettività di destinazione o nel codice del bundle di connettori.
  • Il job cron viene eseguito ogni 30 minuti e aggiorna automaticamente l'agente, se necessario.

--disableautoupgrade

Disabilita gli aggiornamenti automatici rimuovendo il job di upgrade automatico cron.

Parametri agente

Parametri

Nome di parametro Descrizione Obbligatorio Valore predefinito Argomento Argomento

__AGENTE_ID__

ID agente con cui verrà eseguito il contenitore agente.

N

agent-<hostname>-<timestamp>

--agentid

-ai

Posizione package agente Posizione del package agente locale con il nome del package.

--agentpackage

-ap

Volume

Directory per rendere persistenti i dati dell'agente, ad esempio configurazione, wallet e log.

--volume

-pv

Nuovo contenitore con avvio e riavvio

Creare un nuovo contenitore. Questo parametro non richiede un valore.

N

--newcontainer

-nc

Configurazione personalizzata

Fornire configurazioni personalizzate tramite un file delle proprietà.

N

--config

-c

Upgrade automatico

Utilizzare questo parametro con l'operazione di installazione per impostare l'aggiornamento automatico dell'agente.

N

true

--autoupgrade

-au

La configurazione personalizzata viene fornita allo script tramite il file config.properties che ha il seguente 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 # Possible values: info, debug, error
idoConfig.maxJobRunningTimeInMinutes=180
idoConfig.numberOfPartition=3
idoConfig.numberOfOperationsPerPoll=5
idoConfig.numberOfOperationsWorkerThread=5
idoConfig.pollPauseTimeInMills=500
idoConfig.heartBeatIntervalInSeconds=30
idoConfig.sparkMaxResultSizeInGB=2
idoConfig.sparkExecutorMemoryInGB=2

Configurazione runtime tuning

Nella tabella seguente sono elencati i parametri per l'ottimizzazione della configurazione runtime dell'agente di sistema orchestrato e vengono suggeriti valori specifici per le implementazioni su piccola, media e grande scala.

I dettagli su come configurare questi parametri sono disponibili in Parametri agente.

Nota

I limiti relativi per il dimensionamento sono i seguenti:
  • Piccoli: identità/account da 10 a 20k e dati associati
  • Media: identità/account 40-50k e dati associati
  • Grande: oltre le identità/account 50k e i dati associati
Parametro Descrizione Piccola scala Media scala Grande scala

idoConfig.sparkMaxResultSizeInGB

Limite della dimensione totale dei risultati serializzati di tutte le partizioni per ogni azione (ad esempio raccolta) in byte. Deve essere almeno 1M, o 0 per illimitato. I job vengono annullati se la dimensione totale supera questo limite. La presenza di un limite elevato potrebbe causare errori di memoria esaurita nel driver (a seconda di spark.driver.memory e del sovraccarico di memoria degli oggetti in JVM). L'impostazione di un limite appropriato può proteggere il driver da errori di memoria insufficiente.

2

5

7

idoConfig.sparkExecutorMemoryInGB

Quantità di memoria aggiuntiva da allocare per processo esecutore, in MiB a meno che non sia specificato diversamente. Questa è la memoria che tiene conto di elementi quali sovraccarichi delle VM, stringhe interne, altri sovraccarichi nativi e così via.

2

5

7

idoConfig.numberOfPartition

Numero di partizioni.

3

5

7

Risoluzione dei problemi di Oracle Access Governance Agent

Informazioni su come risolvere i messaggi di errore e altri problemi che potrebbero verificarsi durante la configurazione o l'utilizzo di Oracle Access Governance Agent.

Argomenti:

Chiusura agente imprevista a causa di vincoli risorsa

Se si iniziano a raggiungere i limiti delle risorse su memoria, CPU o disco, l'agente potrebbe arrestarsi in modo imprevisto. Per ripristinare l'agente in modo corretto, è necessario riavviare l'agente dopo aver corretto il problema di base.

Soluzione: riavviare l'agente utilizzando il comando restart che rettifica il problema di base.
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