Criação de Log de Auditoria

A criação de log de auditoria fornece uma interface da linha de comandos para gerenciar a criação de log de auditoria e visualizar logs de auditoria. Os logs de auditoria fornecem um histórico das mudanças feitas em objetos no sistema. Eles são armazenados em um índice de texto total.

Se a criação de log de auditoria for usada, então para os objetos que ela rastrear, seu log substituirá o sistema de mensagens que, do contrário, estaria visível em Administração > Mensagens.

Importante: A criação de log de auditoria funciona apenas em operações executadas diretamente em um sistema em execução. Ela não funciona em dados importados para o sistema. O recurso bfimport atualiza o banco de dados diretamente e não interage com o recurso de log de auditoria.

Gerenciando Política de Auditoria

Uma política de auditoria controla a porcentagem da auditoria concluída. Ela é determinada pela configuração da definição de configuração do sistema Política de Auditoria.
NENHUMA
Nenhuma informação de auditoria é gravada.
SEGURANÇA
Somente as informações relacionadas à segurança são gravadas. Exemplos: criação de grupo de acesso e atividade da sessão do usuário.
BÁSICA
Esta é a configuração padrão. Ela também será usada se houver um valor inválido de Política de Auditoria. Somente informações mínimas são gravadas, como usuário, tipo de objeto, uuid e ação.
DETALHADA
Grava informações detalhadas sobre quais propriedades foram alteradas, incluindo o valor antigo e o novo valor. Nem todos os objetos podem fornecer essas informações. Para aqueles que não podem, não há diferença entre a política BREVE e DETALHADA. A definição de configuração do sistema Tamanho Máximo da Sequência de Auditoria pode ser usada para limitar a quantidade de dados armazenados.

A definição de configuração do sistema Tamanho Máximo da Sequência de Auditoria controla a quantidade de informações que podem ser gravadas para uma mudança DETALHADA limitando o tamanho dos campos de dados da sequência. Se o item de auditoria exceder esse número de caracteres, um trecho da mensagem SHA será armazenado, em vez do valor de sequência. Para campos que contenham informações confidenciais, como senhas, o trecho da mensagem será usado independentemente do tamanho da sequência.

Exibindo Informações de Auditoria

Uma interface da linha de comandos permite especificar quais informações exibir e como formatá-las.

A permissão Visualizar Todos os Logs de Auditoria é necessária. Ela é designada por padrão aos grupos de acesso Segurança e Engenheiro de Construção.

Uso: bfauditlog [connection-options][command-options][query]

O executável literal é:

Opções de conexão

-H hostname | --hostname=hostname
O nome do host remoto para a conexão. O padrão é localhost.
-P port | --port=port
A porta de comunicação para a conexão. O padrão é 3966.
-d domain | --domain=domain
O domínio ou a região para autenticação. Padrão: none.
-u login | --user=login
O nome de usuário a ser usado para autenticação. O padrão é root.
-p password | --password=password
A senha do usuário de autenticação. O padrão é root.
-E encoding | --encoding=encoding
A codificação do conjunto de caracteres de saída a ser usada. Se uma codificação inválida for especificada, todas as codificações disponíveis serão listadas e o programa será fechado. Observe que a habilidade para exibir texto na codificação solicitada depende da capacidade do software do terminal usado no cliente. O padrão depende de seu sistema operacional e suporte JVM.

Opções de Comando

-h
Exibe a ajuda.
-b | --bare
Exibe menos informações na saída (bare). O efeito exato depende do formato de saída (veja -t). Por exemplo, na saída XML, as tags de abertura, as tags de encerramento e a contagem de linha são omitidos. No CSV, a contagem de linha e os nomes de coluna são omitidos.
-c auditClass[,auditClass ...] | --audit.class=class-list
Especifica uma lista de classes de auditoria a serem usadas na consulta. Separe diversos nomes de classe com vírgulas. Se especificada diversas vezes, então a união de todas as classes de auditoria especificadas será usada. Se a opção não for especificada, então todas as classes de auditoria que o usuário pode especificar serão usadas. Use a opção -L para listar as classes de auditoria disponíveis. O padrão é todas as classes de auditoria que o usuário está autorizado a visualizar.
-f field[,field ...] | --field=field-list
Especifica os campos a serem incluídos na saída. Separe diversos nomes de campo com vírgulas. Use a opção -L para listar os campos disponíveis.
-s field[+|-][,field[+|-] ...] | --field=field-list
Lista os campos a serem usados para classificar a saída. Por padrão, a saída é classificada em ordem decrescente de audit.stamp. O marcador + especifica a ordem crescente. O marcador - especifica a ordem decrescente. Separe diversos nomes de campo com vírgulas. O padrão é -audit.stamp.
-l [offset,]count | --limit=[offset,]count
Usada para paginar os resultados. O deslocamento e a contagem são expressos em números de entradas. Por exemplo, as médias "-l 100,50" mostram 50 entradas, após a 100ª entrada. Os formatos de saída diferentes de bare incluirão o número total de entradas correspondentes na saída.
-a user[,user ...] | --audit.user=user-list
Limita a saída a entradas associadas a um ou mais usuários especificados. Separe diversos nomes de usuário com vírgulas. Se você usar diversas opções -a, o comando usará a união de todos os usuários especificados nas opções. Os usuários podem ser especificados por UUIDs ou IDs de login. Se -–audit-user for especificado sem um argumento de usuário, então o usuário que é usado para autenticação será utilizado.
-t format | --format=format
O formato a ser usado para saída, um de CSV, XML, JSON ou TEXTO. O padrão é TEXTO.
-L | --list
Lista classes de auditoria disponíveis para o usuário. As classes de auditoria marcadas com um asterisco (*) estão disponíveis para acesso ao usuário. Se usado com -c (lista de classes de auditoria), em vez disso, então uma lista de campos disponíveis para cada classe será exibida. Outras opções de comando não tem efeito quando esta opção é especificada. Usuários com permissão ViewAllAudits podem visualizar logs de auditoria a partir de qualquer classe. Outros usuários podem usar a opção -a para visualizar somente seus próprios logs de auditoria.

Consulta

A consulta é uma sequência que usa o formato comumente utilizado por mecanismos de procura da Web: uma lista de especificações separada por espaço. As especificações estão no formato 'campo:valor' para procurar valor no campo especificado. Se nenhuma consulta for especificada mas pelo menos uma opção for especificada, então todos os logs de auditoria correspondentes serão exibidos. O usuário e a classe de auditoria não podem ser especificados na consulta. Use as opções de comando para especificá-los.

Nota: Use aspas duplas em sistemas Windows e aspas simples em sistemas UNIX e Linux.

Exemplos

  1. Este exemplo lista todos os campos de consulta conhecidos para as classes de auditoria Projeto e Etapa.
    • Windows
      $ bfauditlog.bat -c Project,Step -L
    • UNIX e Linux
      $ bfauditlog.sh -c Project,Step -L 
  2. Este exemplo mostra os 10 logs de auditoria mais recentes para criações de projeto usando um formato de saída de variáveis separadas por vírgulas e sem os títulos da coluna ou contagem de linhas total. Somente o nome e o identificador exclusivo do projeto serão fornecidos para cada registro.
    • Windows
      $ bfauditlog.bat -c Project -t CSV -f audit.target,
        sxProjectName --bare -l 10 "audit.type:Create"
    • UNIX e Linux
      $ bfauditlog.sh -c Project -t CSV -f audit.target,
        sxProjectName --bare -l 10 'audit.type:Create' 
  3. Este exemplo recupera os 100 logs de auditoria mais recentes da instalação na máquina 'buildforge.example.com' após efetuar login com o domínio, nome de usuário e senha fornecidos.
    • Windows
      $ bfauditlog.bat -H buildforge.example.com 
        -d ExampleLDAP -u apiuser -p "My$ecret" -l 100
    • UNIX e Linux
      $ bfauditlog.sh -H buildforge.example.com 
        -d ExampleLDAP -u apiuser -p 'My$ecret' -l 100
  4. Este exemplo recupera os logs de auditoria que foram registrados a partir do início de 23 de Maio de 2011 até o final de 27 de Maio de 2011, de acordo com as configurações de fuso horário do usuário que autenticou a conexão.
    • Windows
      $ bfauditlog.bat "audit.stamp:[2011/05/23 TO 2011/05/27]"
    • UNIX e Linux
      $ bfauditlog.sh 'audit.stamp:[2011/05/23 TO 2011/05/27]'
  5. Este exemplo recupera os logs de auditoria para projetos cujos níveis do grupo de acesso foram alterados a partir do valor antigo de 4, 5 ou 6 para o novo valor 3. Observe que colchetes retos são usados para indicar um intervalo inclusivo, de forma que '[4 TO 6]' significa que os valores 4 e 6 corresponderão. Além disso, observe que os valores de nível antigo e novo estão disponíveis para procura somente se a política de auditoria tiver sido configurada como 'DETAILED'.
    • Windows
      $ bfauditlog.bat -c Project "ioLevel:[4 TO 6] AND inLevel:3"
    • UNIX e Linux
      $ bfauditlog.sh -c Project 'ioLevel:[4 TO 6] AND inLevel:3'
  6. Este exemplo recupera os logs de auditoria para projetos cujos níveis de grupo de acesso foram alterados a partir do valor antigo de 4 ou 5 para o novo valor 2 ou 3. Observe que chaves são usadas para indicar um intervalo exclusivo, de forma que '{3 TO 6}' significa que os valores 3 e 6 não corresponderão. Além disso, observe que os valores de nível antigo e novo estão disponíveis para procura somente se a política de auditoria tiver sido configurada como 'DETAILED'.
    • Windows
      $ bfauditlog.bat -c Project "ioLevel:{3 TO 6} AND inLevel:(2 OR 3)"
    • UNIX e Linux
      $ bfauditlog.sh -c Project 'ioLevel:{3 TO 6} AND inLevel:(2 OR 3)'
  7. Este exemplo restringe a consulta a resultados para usuários de auditoria root e sv e produz saída em um arquivo CSV. Ele retorna dados para as classes Projeto e Etapa e inclui informações para class, type, target, user e timestamp:
    • Windows
      $ bfauditlog.bat -c Project,Step -f audit.class,
        audit.type,audit.target,audit.user,audit.stamp
      	  -a root,sv -l 10,5 -t CSV
    • UNIX e Linux
      $ bfauditlog.sh -c Project,Step -f audit.class,
        audit.type,audit.target,audit.user,audit.stamp
      	  -a root,sv -l 10,5 -t CSV

Classes

Classes são rótulos para entradas do log de auditoria. Use a opção -L para listar as classes disponíveis para você.

Campos

Os campos representam as informações designadas a cada registro de log de auditoria.

Alguns campos em um registro de log de auditoria refletirão seu estado (o para antigo, n para novo, x para estendido) e seu tipo de dados (s para sequência, i para número inteiro). Exemplo:

  soDescription: Descrição de projeto antigo (sequência)
	snDescription: Descrição de novo projeto (sequência)
	soSelectorUuid:  UUID do seletor antigo (sequência)
	snSelectorUuid:  UUID do novo seletor (sequência)
	ioRunLimit:  Limite de execução antigo (número inteiro)
	inRunLimit:  Novo limite de execução (número inteiro)

Feedback