Gerenciar o Oracle Access Governance Agent para Integrações Indiretas

Em alguns casos, um sistema orquestrado não tem uma conexão direta com o Oracle Access Governance e exige que um agente ative a transferência de dados entre o Oracle Access Governance e o sistema orquestrado.

Registrar e Fazer Download do Agente do Oracle Access Governança

Para permitir que um sistema orquestrado se conecte ao Oracle Access Governance, informe os detalhes e as credenciais de integração do sistema e crie um agente específico do seu ambiente.

  1. Em um browser, navegue até a home page do serviço Oracle Access Governance e efetue log-in como usuário com a atribuição do aplicativo Administrador.
  2. Na home page de serviço do Oracle Access Governance, clique no ícone Menu de Navegação e selecione Administração de Serviços e, em seguida, Sistemas Orquestrados.
  3. Selecione o botão Adicionar um sistema conectado para navegar até a página Adicionar n sistema orquestrado para iniciar a configuração.
  4. Na etapa Selecionar sistema, selecione o sistema que deseja integrar ao Oracle Access Governance e clique em Próximo.
  5. Na etapa Informar Detalhes, informe os detalhes básicos, como nome e descrição, para o sistema orquestrado e clique em Próximo.
  6. Na etapa Configurar, informe detalhes de conexão para o sistema orquestrado:
    Observação

    Os detalhes da integração serão diferentes dependendo do tipo de sistema orquestrado. Para obter detalhes específicos relacionados a cada sistema orquestrado, consulte o artigo Supported Integrations with Oracle Access Governance.
  7. Clique em Próximo. Uma mensagem é exibida para fazer download do agente. Selecione o link Fazer download e faça download do arquivo compactado do agente para o ambiente no qual o agente será executado.
  8. Verifique o conteúdo do pacote do arquivo zip baixado.

    O conteúdo do pacote do agente será semelhante ao seguinte:

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

    O pacote do agente não contém a configuração de integração do sistema orquestrado. Ele se conecta à instância de serviço do Oracle Access Governance e recupera as informações conforme necessário. Isso significa que não há necessidade de fazer download ou reinstalar o agente para alterações subsequentes na configuração de integração.

Pré-requisitos

Pré-requisitos para instalação e execução de uma agente.

Os pré-requisitos abaixo devem ser atendidos para que um agente seja instalado e executado.

  1. O script de gerenciamento do agente suporta o docker e o podman como runtime do contêiner. O script do agent management detecta automaticamente o run-time do contêiner. Se ambos estiverem presentes, o podman será selecionado.
  2. O runtime do contêiner (docker/podman) deve ser configurado para ser executado como um usuário não raiz, o mesmo que o usado para instalar o agente.
  3. Utilitários:
    O agente requer os seguintes utilitários do sistema operacional:
    • descompactar
    • sed
    • estranho
    • crontab
    Observação

    O usuário de instalação do agente deve ter permissão para usar cada um desses utilitários.
  4. JDK: O agente requer o JDK 11.0.x.
  5. Ativa processos para o usuário do SO que inicia o agente para 'linger' após o encerramento da sessão do usuário. Se essa opção não estiver ativada, quando você encerrar a sessão do usuário, o processo do agente será interrompido e você verá erros ao tentar se comunicar entre o Oracle Access Governance, o agente e o sistema orquestrado.
    • Para verificar se o linger está ativado para o usuário do sistema operacional, verifique se há um arquivo com o mesmo nome do usuário no diretório /var/lib/systemd/linger. Se o arquivo existir, essa opção será ativada:
      ls /var/lib/systemd/linger/oracle/<myuser>
    • Para ativar o linger para o usuário do sistema operacional, ative o comportamento do linger do systemd:
      loginctl enable-linger <myuser>
  6. O espaço mínimo em disco necessário para o agente deve ser:
    • Espaço livre de 4 GB para o diretório configurado como o volume do agente.
    • 5GB de espaço livre para a casa docker/podman.

    Os valores mínimos acima incluem o espaço em disco consumido durante o upgrade, no processo do qual um backup é criado e uma nova imagem do agente é baixada e carregada.

  7. Se SELinux estiver ativado no sistema de host, defina o contexto de segurança do Volume Persistente usado pelo Agente executando o seguinte comando:
    chcon -Rt svirt_sandbox_file_t <PV_Directory>

Dimensionando a Máquina Virtual/o Host

A tabela abaixo sugere valores para dimensionar sua VM ou host do agente do sistema orquestrado para implementações de pequena, média e grande escala.

Parâmetro Descrição Pequena Escala Média Escala Grande Escala

Núcleos de CPU

Número de Núcleos da CPU.

2

4

8

Memória

Volume de memória (GB)

16

32

64

Instalar o Agente do Oracle Access Governance

Um processo passo a passo para instalar o Agente do Oracle Access Governance com exemplos de comandos a serem executados:

Para instalar o agente submetido a download no sistema local, execute as seguintes etapas:
  1. Descompacte o agente baixado no local.

    O conteúdo do agente descompactado deve ser:

    agent-package-<version>.zip
      - config.json
      - wallet
          - cwallet.sso
          - cwallet.sso.lck
      - container-image
          - agent.tar.gz
  2. Execute o script de gerenciamento com os seguintes 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

    Um exemplo com configuração padrão seria semelhante a este:

    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
    

    Um exemplo com configuração personalizada teria a seguinte aparência:

    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
    
    Dica

    Se você vir problemas durante a cópia-colagem ou um erro durante a execução de um script, como um erro de formato inválido, tente inserir manualmente um hífen duplo ("-", o valor ASCII para hífen é 45).
  3. Inicie o agente com o seguinte 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 exemplo:

    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

Verificar Agente

Detalha como verificar a instalação e operação do agente de sistema orquestrado.

Para verificar a instalação do agente de sistema orquestrado, conclua as seguintes etapas:
  1. Na Console do Oracle Access Governance, selecione o Menu de Navegaçãoícone para exibir o menu de navegação.
  2. Na Console do Oracle Access Governance, selecione Administração de Serviços → Sistemas Orquestrados no menu de navegação.
  3. Na tela Sistemas Orquestrados, o sistema orquestrado mostra um status Aguardando a integração inicial. Clique em Gerenciar → Lista de Verificação para Solução de problemas.
  4. O Log de Atividades na parte inferior da página mostrará o status da operação Validar, Pendente, enquanto o agente aparecer. Se o agente não aparecer, verifique se há problemas nos logs de instalação e operação do agente.
  5. Assim que o agente aparecer, o status da operação Validar será mostrado como Êxito.

Exemplo de Uso do Agente

Exibe exemplos de uso do script de gerenciamento do agente.

Depois de instalar e verificar com sucesso seu agente, você poderá começar a gerenciar o ciclo de vida. O script agentManagement.sh fornece suporte para as operações de inicialização, interrupção, reinicialização, desinstalação e upgrade.

Iniciar o Agente

Você inicia o agente com o seguinte 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 exemplo:

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

Interromper o Agente

Você interrompe o agente com o seguinte 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 exemplo:

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

Reiniciar o Agente

Você reinicia o agente com o seguinte 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 exemplo:

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

Desinstalar o Agente

Você desinstala o agente com o seguinte 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 exemplo:

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

Fazer Upgrade do Agente

Você faz upgrade do agente com o seguinte 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 exemplo:

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

Ativar Upgrade Automático

Ative o upgrade automático com o seguinte 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 exemplo:

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

Desativar Upgrade Automático

Execute esta etapa somente se for absolutamente necessário, pois isso pode causar falhas na comunicação entre o agente e o serviço Oracle Access Governance. Se você executar esta etapa e vir falhas, faça upgrade imediatamente do agente seguindo as etapas mencionadas no exemplo Fazer Upgrade do Agente em Uso do Exemplo de Agente.

Desative o upgrade automático com o seguinte 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 exemplo:

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

Suporte a Jar Personalizado

Ao integrar com o Oracle Access Governance, alguns sistemas orquestrados podem precisar de jar(s) personalizado(s). Por exemplo, para se comunicar com o banco de dados DB2 e MYSQL, é necessário o respectivo jar do driver. Use as etapas a seguir para fazer upload do jar personalizado.
  1. Faça download do jar do driver e coloque-o no caminho customJarsDirectory, conforme especificado no config.json. Por exemplo, config.json pode conter uma entrada, customJarsDirectory : /app/data/customJars, em que /app é o volume do agente.
  2. Calcule a soma de verificação do jar do driver baixado usando SHA-512.
  3. Na Console do Oracle Access Governance, vá para Administração de Serviço e, em seguida, Sistemas Orquestrados.
  4. Na página Sistemas Conectados, selecione Gerenciar integração para seu sistema orquestrado.
  5. Em Configurações, selecione o botão Gerenciar no mosaico Definições de Integração.
  6. Atualize a configuração do sistema orquestrado no campo Detalhes do Jar Personalizado. Forneça o nome do jar do driver e a soma de verificação no formato <jarName>::<checksum>.
    Para o sistema conectado DB2, valor de amostra em Detalhes do Jar Personalizado
    db2jcc.jar::c8520f145b428b1133b771bb2c70a6f0f546c9f0655f9de5de2e7b64d5ede786911ad50b543846154fe373dead78d38fb6dded560e0de4c4e8ccbbf0a06b6c1e
  7. Clique em Salvar.

Operações de Gerenciamento de Agentes

Lista detalhes das operações que o agente pode executar e descrições de parâmetros relacionados.

O agente de sistema orquestrado pode ser gerenciado usando o script agentManagement.sh. Este script pode ser baixado do GitHub. O script suporta docker e podman, ele detecta automaticamente o runtime do contêiner disponível. Se ambos estiverem disponíveis, o script usará podman.

Operações

Operação Descrição Informações Adicionais

--install

  • Instala o pacote de agentes baixado no volume especificado.
  • Carrega a imagem do contêiner.

Use a --config para usar uma configuração personalizada.

--start

  • Inicia o contêiner do agente.
  • Inicia o daemon do agente.

Use --newcontainer para iniciar um novo contêiner.

Use a --config para usar uma configuração personalizada.

--stop

  • Interrompe o daemon do agente.
  • Interrompe o contêiner do agente.

--restart

  • Interrompe o daemon do agente.
  • Interrompe o contêiner do agente.
  • Remova o contêiner do agente se o flag newcontainer estiver definido como true.
  • Inicia o contêiner do agente.
  • Inicia o daemon do agente.

--uninstall

  • Interrompe o daemon do agente.
  • Remove o contêiner do agente.
  • Limpa o volume.

--upgrade

  • Descompacta o novo agent-package.zip em um local temporário.
  • Valida o conteúdo do pacote.
  • Carrega a imagem do novo arquivo zip.
  • Inicia um contêiner temporário usando a nova imagem e configuração.
  • Se o contêiner temporário não tiver problemas, interromperá o contêiner.
  • Interrompe o contêiner existente.
  • Copia a nova configuração do local temporário para o local atual. Isso retém qualquer personalização.
  • Inicia o agente com a nova imagem e configuração.
  • Inicia o daemon do agente.

As alterações a seguir requerem uma atualização.

  • Alteração na configuração config.json
  • Alteração do bundle do conector
  • Alteração na Wallet
  • Alteração da imagem do agente

As alterações a seguir acionarão uma operação de reconfiguração que é tratada pela framework do agente.

  • Conector (mesma versão do modelo)
  • Conector (outra versão de modelo)

Para obter mais informações, consulte Upgrade de um Agente.

--status

Lista os seguintes detalhes do agente:
  • ID do Agente
  • Runtime e versão do contêiner
  • Pacote do agente
  • Versão do agente
  • Local da instalação
  • Estado do agente

--enableautoupgrade

Ativa o upgrade automático executando as seguintes tarefas:

  • Configura um job cron para detectar upgrades para qualquer alteração nos parâmetros de conectividade de destino ou no código do pacote do conector.
  • O job cron é executado a cada 30 minutos e faz upgrade do agente automaticamente, se necessário.

--disableautoupgrade

Desativa upgrades automáticos removendo o job de upgrade automático cron.

Parâmetros de Agente

Parâmetros

Nome do Parâmetro Descrição Obrigatório Valor Padrão Argumento Abreviatura do argumento

__AGENT_ID__

ID do Agente com o qual o contêiner do agente seria executado.

Não

agent-<hostname>-<timestamp>

--agentid

-ai

Local do Pacote do Agente Local do pacote do Agente Local com o nome do pacote.

Sim

--agentpackage

-ap

Volume

Diretório para persistir dados do agente, como configuração, wallet e logs.

Sim

--volume

-pv

Novo Contêiner com inicialização e reinicialização

Crie um novo contêiner. Este parâmetro não precisa de um valor.

Não

--newcontainer

-nc

Configuração personalizada

Forneça configurações personalizadas por meio de um arquivo de propriedades.

Não

--config

-c

Upgrade Automático

Use este parâmetro com a operação de instalação para configurar o upgrade automático do agente.

Não

true

--autoupgrade

-au

A configuração personalizada é fornecida ao script através do arquivo config.properties que tem o seguinte 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

Ajustando a Configuração de Runtime

A tabela a seguir lista os parâmetros para ajuste fino da configuração de runtime do agente do sistema orquestrado e sugere valores específicos para implementações de pequena, média e grande escala.

Os detalhes de como configurar esses parâmetros podem ser encontrados em Parâmetros do Agente.

Observação

Os limites temporários para dimensionamento são:
  • Pequenas: 10-20k identidades/contas e dados associados
  • Médio: 40-50k identidades/contas e dados associados
  • Grande: Além de 50k identidades/contas e dados associados
Parâmetro Descrição Pequena Escala Média Escala Grande Escala

idoConfig.sparkMaxResultSizeInGB

Limite do tamanho total dos resultados serializados de todas as partições para cada ação (por exemplo, coleta) em bytes. Deve ser pelo menos 1 M ou 0 para ilimitado. Os trabalhos serão cancelados se o tamanho total estiver além desse limite. Ter um limite alto poderia causar erros de falta de memória no driver (depende do spark.driver.memory e da sobrecarga de memória dos objetos na JVM). A definição de um limite adequado pode proteger o driver contra erros de memória insuficiente.

2

5

7

idoConfig.sparkExecutorMemoryInGB

Quantidade de memória adicional a ser alocada por processo executor, em MiB, a menos que especificado de outra forma. Esta é a memória que explica coisas como custos indiretos de VM, strings internadas, outros custos indiretos nativos, etc.

2

5

7

idoConfig.numberOfPartition

Número de partições.

3

5

7

Diagnosticando e Solucionando Problemas do Oracle Access Governance Agent

Saiba como tratar mensagens de erro e outros problemas que você possa ver ao configurar ou usar o Oracle Access Governance Agent.

Tópicos:

Shutdown Inesperado do Agente Devido a Restrições de Recurso

Se você começar a atingir os limites de recursos na memória, CPU ou disco, o agente poderá ser encerrado inesperadamente. Para fazer o backup do agente novamente de forma limpa, você deve reiniciar o agente após corrigir o problema subjacente.

Solução: Reinicie o agente usando o comando restart para corrigir o problema subjacente.
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