Segurança de Auditoria, Alterações de Artefato e Eventos de LCM

Os administradores de serviço podem ativar a auditoria de segurança para rastrear as alterações feitas no servidor Essbase.

Com base nos parâmetros que você especifica em um arquivo de política de auditoria, o Essbase reúne informações sobre alterações na segurança no nível do sistema, artefatos, eventos LCM e instruções MaxL executadas (incluindo importações). O Essbase consolida as informações rastreadas em um arquivo de log de auditoria ou as envia para um banco de dados externo. As informações rastreadas sobre cada evento incluem tempo, cliente, usuário, artefatos afetados, duração, ID, nome do aplicativo e do banco de dados, status e uma descrição.

Você ativa a auditoria no nível do servidor desses eventos usando a definição de segurança AUDITTRAIL SECURITY do Essbase.

Workflow para Ativar a Auditoria de Segurança no Essbase Server

Esse workflow explica como ativar a auditoria de segurança no Essbase Server usando AUDITTRAIL SECURITY. Após a ativação da auditoria, defina EssbaseSecurityAuditLogPolicy. O Essbase poderá gravar os registros de auditoria em um arquivo CSV ou enviá-los para um banco de dados externo.

Nesse workflow, o Oracle Database é o banco de dados externo, mas você também pode usar o SQL Server, MySQL ou DB2.

Para concluir o workflow, você deve ser um administrador de sistema e precisará acessar o <Caminho de Configuração do Essbase> na máquina do Essbase Server.

Esse caminho contém os arquivos que você precisará editar:
  • O arquivo de configuração essbase.cfg
  • Um arquivo de política de auditoria de segurança padrão
  1. Ative a auditoria de eventos do servidor adicionando a seguinte configuração ao essbase.cfg na máquina do servidor Essbase:

    AUDITTRAIL SECURITY

    Após a atualização da configuração, reinicie o Essbase.

    Consulte Definir Propriedades de Configuração no Nível do Servidor e Iniciar, Interromper e Verificar Servidores.

  2. Um arquivo de política padrão (XML) é criado no servidor Essbase. Esse arquivo, EssbaseSecurityAuditLogPolicy.xml, está no caminho que você especificou durante a fase de configuração da implantação para armazenar o arquivo de configuração do Essbase (o <Caminho de Configuração do Essbase>, que também é onde o essbase.cfg reside).

    O arquivo de política padrão criado tem estes conteúdos:
    <?xml version="1.0" encoding="UTF-8"?>
    <security-audit-policy>
       <audit_events_to_capture>LOGIN,LOGINAS,LOGIN_FAIL,LOGOUT,SERVICE_ROLE_ASSIGN,SERVICE_ROLE_REVOKE,APPLICATION_ROLE_ASSIGN,APPLICATION_ROLE_REVOKE,ARTIFACT_UPLOADED,ARTIFACT_MODIFIED,ARTIFACT_DELETED,ARTIFACT_CREATE,ARTIFACT_RENAMED,APPLICATION_DELETED,APPLICATION_CREATE,APPLICATION_RENAMED,DATABASE_DELETED,DATABASE_CREATE,DATABASE_RENAMED,LCM_EXPORT_START,LCM_EXPORT_END,LCM_IMPORT_START,LCM_IMPORT_END,LCM_IMPORT_FAIL,DATA_LOAD_MAXL,LOAD_DATA_JOB_START,LOAD_DATA_JOB_END,LOAD_DATA_JOB_FAILED,DELETE_SESSION,EXECUTE_MAXL,APPLICATION_SET_ACTIVE,APPLICATION_START,APPLICATION_STOP,DATABASE_START,DATABASE_STOP</audit_events_to_capture>
       <audit_sinks>
          <audit_sink>
             <audit_sink_type>CSV</audit_sink_type>
             <max-file-size>50000000</max-file-size>
             <roll-nos>100</roll-nos>
          </audit_sink>
       </audit_sinks>
    </security-audit-policy>
    
    CSV é o tipo de dissipação de auditoria padrão. Se você estiver usando o tipo de dissipação de auditoria padrão (CSV) e quiser testar se os detalhes de auditoria estão gravados no arquivo CSV de log de auditoria de segurança,
    1. Execute uma ação que seja um evento auditável, como criar um aplicativo. Você pode selecionar qualquer ação listada na seção <audit_events_to_capture> da sua política.
    2. SSH para o servidor Essbase.
    3. Navegue até <DOMAIN_HOME>/servers/serverName/logs/essbase/. Se você não souber onde <DOMAIN_HOME> está, consulte Locais de Ambiente na Plataforma do Essbase.
    4. Abra e revise o arquivo, SecurityAuditLog_n.csv.

      Exemplo de um arquivo CSV de log de auditoria de segurança:
      Imagem de um arquivo csv de auditoria de segurança.

  3. Se você quiser que a trilha de auditoria de segurança seja enviada para um banco de dados externo,

    1. Crie uma conexão com a origem externa. Consulte Criar Conexão e Origem de Dados Globais ou Criar uma Conexão e Origem de Dados no Nível do Aplicativo.
    2. Edite o arquivo de política para alterar a dissipação de auditoria para DATABASE.
    3. Adicione um parâmetro <db_connection_name> ao parâmetro <audit_sink>. O valor do parâmetro <db_connection_name> deve ser o nome exato da conexão criada em uma subetapa acima.
    Exemplo de política de auditoria editada para enviar a trilha de auditoria de segurança para o Oracle Database:
    <?xml version="1.0" encoding="UTF-8"?>
    <security-audit-policy>
       <audit_events_to_capture>LOGIN,LOGINAS,LOGIN_FAIL,LOGOUT,SERVICE_ROLE_ASSIGN,SERVICE_ROLE_REVOKE,APPLICATION_ROLE_ASSIGN,APPLICATION_ROLE_REVOKE,ARTIFACT_UPLOADED,ARTIFACT_MODIFIED,ARTIFACT_DELETED,ARTIFACT_CREATE,ARTIFACT_RENAMED,APPLICATION_DELETED,APPLICATION_CREATE,APPLICATION_RENAMED,DATABASE_DELETED,DATABASE_CREATE,DATABASE_RENAMED,LCM_EXPORT_START,LCM_EXPORT_END,LCM_IMPORT_START,LCM_IMPORT_END,LCM_IMPORT_FAIL,DATA_LOAD_MAXL,LOAD_DATA_JOB_START,LOAD_DATA_JOB_END,LOAD_DATA_JOB_FAILED,DELETE_SESSION,EXECUTE_MAXL,APPLICATION_SET_ACTIVE,APPLICATION_START,APPLICATION_STOP,DATABASE_START,DATABASE_STOP</audit_events_to_capture>
       <audit_sinks>
          <audit_sink>
             <audit_sink_type>DATABASE</audit_sink_type>
               <db_connection_name>OraclePDB</db_connection_name>
          </audit_sink>
       </audit_sinks>
    </security-audit-policy>
  4. Teste se os detalhes de auditoria foram enviados ao Banco de Dados.

    1. Execute uma ação que seja um evento auditável, como criar um aplicativo. Você pode selecionar qualquer ação listada na seção <audit_events_to_capture> da sua política.

      O Essbase deve criar uma tabela de auditoria chamada ESSBASE_SECURITY_AUDIT_EVENT_LOG no esquema de banco de dados externo.

    2. Faça log-in no RDBMS externo e execute uma consulta para verificar a presença da tabela. Por exemplo, faça log-in no SQL Developer e execute
      select * from ESSBASE_SECURITY_AUDIT_EVENT_LOG
  5. Use uma ferramenta de visualização de dados para exibir e analisar os registros de auditoria de segurança. Você pode usar o Smart View, o Oracle Data Desktop (disponível com uma licença do Oracle Technology Network), ferramentas de visualização de código-fonte aberto ou seu fornecedor de banco de dados não Oracle.

Sobre o Arquivo da Política de Auditoria

A política de auditoria é definida em um arquivo XML que você pode editar para atender às suas necessidades. Nesse arquivo, você pode especificar quais eventos do Essbase Server rastrear e se os dados devem ser gravados em um log de auditoria de segurança ou enviados para um banco de dados externo. Se você estiver gravando dados em um log de auditoria, será possível indicar o tamanho máximo do arquivo e o número de arquivos de log de auditoria de segurança a serem mantidos.

O Essbase cria o EssbaseSecurityAuditLogPolicy.xml ao reiniciar o Essbase após ativar a auditoria de segurança. Em seguida, você pode editar o arquivo, conforme necessário, para refinar a política de auditoria. O arquivo está no caminho que você especificou durante a fase de configuração da implantação para armazenar a configuração do Essbase (o <Caminho de Configuração do Essbase>, que também é onde o essbase.cfg reside). Se você não souber onde isso está no seu ambiente, consulte Locais de Ambiente na Plataforma do Essbase para obter uma explicação.

Para editar o arquivo da política de auditoria,
  1. Navegue até EssbaseSecurityAuditLogPolicy.xml. O arquivo está localizado no diretório do aplicativo especificado durante a fase de configuração da implantação do Essbase.

  2. Abra-o em um editor de texto.

  3. Edite o coletor de auditoria, os detalhes do registro em log e os eventos a serem rastreados.

    1. Se preferir, adicione <audit_sink_type>DATABASE</audit_sink_type> caso deseje enviar os dados para um banco de dados externo.

    2. Se você indicou um tipo de coletor de auditoria igual a DATABASE na etapa a, na linha a seguir, adicione <db_connection_name>ConnectionName</db_connection_name> com o nome da conexão de banco de dados definida no Workflow para Ativar a Auditoria de Segurança no Servidor Essbase.

    3. Se estiver gravando dados em um arquivo de log de auditoria, altere opcionalmente o tamanho do arquivo usando <max-file-size>n</max-file-size>, em que n é o número de bytes. O padrão é 50000000 bytes.

    4. Se estiver gravando dados em um arquivo de log de auditoria, indique quantos arquivos CSV de log de auditoria de segurança salvar usando <roll-nos>n</roll-nos>, em que n é o número de arquivos.

    5. Indique quais eventos de auditoria você deseja capturar, usando <audit_events_to_capture>events_list</audit_events_to_capture>.

Os eventos que você indica no arquivo de política de auditoria são rastreados em um arquivo de log de auditoria de segurança ou enviados para um banco de dados externo.

Você pode indicar os seguintes eventos para capturar no arquivo de política de auditoria:

Evento Descrição
LOGIN O usuário [x] fez log-in com sucesso
LOGIN_AS O usuário [x] fez log-in como [y]
LOGOUT O usuário [x] fez log-out
LOGIN_FAIL Falha ao fazer log-in do usuário [x]
SERVICE_ROLE_ASSIGN A função [x] de serviço do Essbase foi designada a [y]
SERVICE_ROLE_REVOKE A função [x] de serviço do Essbase foi revogada de [y]
APPLICATION_ROLE_ASSIGN O Usuário/Grupo [x] recebeu a função [y] no aplicativo [z]
APPLICATION_ROLE_REVOKE O Usuário/Grupo [x] foi revogado da função [y] no aplicativo [z]
ARTIFACT_CREATE Artefato [x] do tipo [y] criado
ARTIFACT_UPLOADED Solicitação de upload de artefato chamada para o aplicativo [a], o banco de dados [b], o nome do objeto [c] e o tipo de objeto [d]
ARTIFACT_MODIFIED Artefato [x] do tipo [y] modificado
ARTIFACT_DELETED Artefato [x] do tipo [y] excluído
ARTIFACT_RENAMED Artefato [x] do tipo [y] renomeado como [z]
APPLICATION_DELETED Aplicativo [x] excluído
APPLICATION_CREATE Aplicativo [x] criado
APPLICATION_RENAMED Aplicativo [x] renomeado como [y]
DATABASE_DELETED Banco de dados [x] excluído do aplicativo [y]
DATABASE_CREATE Banco de dados [x] criado no aplicativo [y]
DATABASE_RENAMED Banco de dados [x] renomeado como [y] no aplicativo [z]
LCM_EXPORT_START Job de exportação do LCM iniciado com o nome de arquivo [x]
LCM_EXPORT_END Job de exportação do LCM concluído com o nome de arquivo [x] e o status de job [y]
LCM_IMPORT_START Importação do LCM iniciada para o aplicativo [x] com o nome de arquivo [y]
LCM_IMPORT_END Importação do LCM concluída para o aplicativo [x] com o nome de arquivo [y]
LCM_IMPORT_FAIL Falha na importação do LCM para o aplicativo [x] com o nome de arquivo [y]
DATA_LOAD_MAXL A instrução MaxL de dados de importação foi executada para o aplicativo [x] e banco de dados [y] pelo usuário [z]
EXECUTE_MAXL Instrução MaxL [x] executada por meio do usuário [y]
LOAD_DATA_JOB_START Job de carga de dados iniciado usando o arquivo de dados [x] e o arquivo de regras [y]
LOAD_DATA_JOB_END Job de carga de dados do arquivo de dados [x] e arquivo de regras [y] concluído com o status [z]
LOAD_DATA_JOB_FAILED Falha no job de carregamento de dados em decorrência de [x]
DELETE_SESSION Sessão [x] excluída

Eventos de Auditoria de Segurança

Os eventos de auditoria de segurança são rastreados em um arquivo de log de auditoria de segurança ou enviados para um banco de dados externo, dependendo do que você indica no arquivo de política de auditoria.

Para obter instruções sobre como abrir o log de auditoria de segurança ou a tabela de auditoria no esquema de banco de dados externo, consulte Workflow para Ativar a Auditoria de Segurança no Servidor Essbase.

O log de auditoria de segurança e a tabela de auditoria incluem as seguintes informações (quando aplicável) sobre cada evento:
  • Hora - quando o evento ocorreu
  • Cliente - endereço IP do cliente ou nome do host
  • Nome de usuário - o usuário que inicia a ação
  • ID da sessão – o ID da sessão do Essbase
  • Tipo de Evento - o tipo de evento
  • Tipo de artefato - o tipo de artefato envolvido no evento
    Exemplos de tipo de artefato:
    • Tipo de artefato partition_file para o tipo de evento ARTIFACT_UPLOADED
    • O Tipo de Artefato 'Aplicativo' para o Tipo de Evento LCM_EXPORT_START
    • O Tipo de Artefato 'Usuário' para o Tipo de Evento APPLICATION_ROLE_ASSIGN
  • Nome do Artefato – o nome do artefato envolvido no evento. Por exemplo, um nome de arquivo, nome de usuário ou nome de aplicativo
  • Informações Adicionais - informações adicionais associadas ao evento
  • Descrição - descrição do evento

    O conteúdo do campo Descrição está localizado.

  • ID - Um identificador universal exclusivo de 128 bits descrevendo o evento.

    Exemplo: 123e4567-e89b-12d3-a456-426614174000

  • Duração - a duração do evento em milissegundos
  • Nome do aplicativo - o nome do aplicativo
  • Nome do Banco de Dados - o nome do banco de dados
  • Status - sucesso ou falha