Registro de auditoría

El registro de auditoría proporciona una interfaz de línea de mandatos para gestionar y visualizar los registros de auditoría. Dichos registros proporcionan un historial de cambios de los objetos del sistema. Se almacenan en índice de texto completo.

Si se utiliza el registro de auditoría, para los objetos que audita su registro sustituye a los mensajes que de otro modo serían visibles en Administración > Mensajes.

Importante: El registro de auditoría sólo funciona en operaciones que se realizan directamente sobre un sistema en ejecución. No funciona sobre los datos importados al sistema. El recurso bfimport actualiza directamente la base de datos y no interactúa con el recurso de registro de auditoría.

Gestión de la política de auditoría

Una política de auditoría controla cuánto se audita. Se determina mediante la definición del parámetro de configuración del sistema Política de auditoría.
NONE
No se registra información de auditoría.
SECURITY
Solamente se registra información relacionada con la seguridad. Ejemplos: creación de grupos de acceso y actividad de sesión de los usuarios.
BASIC
Éste es el valor predeterminado. También se utiliza si hay un valor no válido de política de auditoría. Solamente se registra información mínima, como el usuario, tipo de objeto, uuid y acción.
DETAILED
Registra información detallada sobre qué propiedades han cambiado, incluidos el valor antiguo y el nuevo. No todos los objetos pueden proporcionar esta información. Para los que no pueden, no hay diferencia entre las políticas BRIEF y DETAILED. El valor de configuración del sistema Longitud máxima de series en auditoría puede utilizarse para limitar la cantidad de datos que se almacenan.

El valor de configuración del sistema Longitud máxima de series en auditoría controla cuánta información puede registrarse para un cambio DETALLADO limitando la longitud de los campos de datos de series de caracteres. Si el elemento de auditoría supera este número de caracteres, se almacena un resumen SHA del mensaje en lugar del valor de la serie de caracteres. Para campos que contienen información sensible, como por ejemplo contraseñas, se utiliza el resumen del mensaje independientemente de la longitud de la serie.

Visualización de información de auditoría

Una interfaz de línea de mandatos le permite especificar qué información visualizar y cómo darle formato.

Se necesita el permiso Visualizar todos los registros de auditoría. Se asigna de manera predeterminada a los grupos de acceso Seguridad e Ingeniero del build.

Uso: bfauditlog [opciones-conexión][opciones-mandato][consulta]

El ejecutable literal es como sigue:

Opciones de conexión

-H nombre_host | --hostname=nombre_host
El nombre de host remoto para la conexión. El valor predeterminado es localhost.
-P puerto | --port=puerto
Puerto de comunicaciones para la conexión. El valor predeterminado es 3966.
-d dominio | --domain=dominio
El dominio o reino para la autenticación. Valor predeterminado: ninguno.
-u usuario | --user=usuario
El nombre de usuario para la autenticación. El valor predeterminado es root.
-p contraseña | --password=contraseña
La contraseña para autenticar al usuario. El valor predeterminado es root.
-E codificación | --encoding=codificación
La codificación de juego de caracteres de salida que utilizar. Si se especifica una codificación no válida, se listan todas las codificaciones válidas y el programa finaliza. Observe que la capacidad de mostrar texto en la codificación especificada depende de las posibilidades del software de terminal utilizado en el cliente. El valor predeterminado depende del sistema operativo y del soporte de JVM.

Opciones de mandato

-h
Visualiza texto de ayuda.
-b | --bare
Muestra menos información en la salida (básica). El efecto exacto depende del formato de salida (consulte -t). Por ejemplo, en la salida XML se omiten las etiquetas de apertura, cierre y recuento de filas. En CSV se omite el contaje de filas y los nombres de las columnas.
-c claseAudit[,claseAudit ...] | --audit.class=lista-clases
Especifica una lista de clases de auditoría que utilizar en la consulta. Separe los distintos nombres de clases con comas. Si se especifica varias veces, se utilizará la unión de todas las clases de auditoría especificadas. Si no se especifica la opción, se utilizarán todas las clases que pueda especificar el usuario. Utilice la opción -L para listar las clases de auditoría disponibles. El valor predeterminado es todas las clases que el usuario esté autorizado a visualizar.
-f campo[,campo ...] | --field=lista-campos
Especifica los campos que incluir en la salida. Separe los distintos nombres de campo con comas. Utilice la opción -L para listar los campos disponibles.
-s campo[+|-][,campo[+|-] ...] | --field=lista-campos
Lista los campos que utilizar para ordenar la salida. De manera predeterminada la salida se ordena por audit.stamp en orden descendente. El marcador + especifica el orden ascendente. El marcador - especifica el orden descendente. Separe los distintos nombres de campo con comas. El valor predeterminado es -audit.stamp.
-l [desplazamiento,]recuento | --limit=[desplazamiento,]recuento
Se utiliza para paginar los resultados. El desplazamiento y recuento se expresan en números de entradas. Por ejemplo, "-l 100,50" significa mostrar 50 entradas después de la centésima entrada. Los formatos de salida que no son básicos incluyen el número total de entradas coincidentes en la salida.
-a usuario[,usuario ...] | --audit.user=lista-usuarios
Limita la salida a las entradas asociadas con el usuario o usuarios especificados. Separe los distintos nombres de usuario con comas. Si utiliza varias opciones -a, el mandato utilizará la unión de todos los usuarios especificados en las opciones. Los usuarios pueden especificarse por ID de inicio de sesión o por UUID. Si se especifica -–audit-user sin un argumento de usuario, se utilizará el usuario que se utilice para la autenticación.
-t formato | --format=formato
El formato que debe utilizarse para la salida, uno de CSV, XML, JSON o TEXT. El valor predeterminado es TEXT.
-L | --list
Lista las clases de auditoría disponibles para el usuario. Las clases de auditoría que se marcan con un asterisco (*) están disponibles para que el usuario acceda a ellas. Si se utiliza con -c (lista de clases de auditoría), en su lugar se mostrará una lista de campos disponibles para cada clase. Las otras opciones de mandato no tienen efecto cuando se especifica esta opción. Los usuarios con permiso ViewAllAudits pueden visualizar los registros de auditoría de cualquier clase. El resto de usuarios pueden utilizar la opción -a para visualizar sus propios registros de auditoría solamente.

Consulta

La consulta es una serie de caracteres que utiliza el formato comúnmente usado por los motores de búsqueda de la web: una lista de especificaciones separadas por espacios. Las especificaciones se dan en la forma 'campo:valor' para buscar el valor en el campo especificado. Si no se especifica ninguna consulta pero se especifica al menos una opción, se mostrarán todos los registros de auditoría que coincidan. El usuario de auditoría y la clase de auditoría no pueden especificarse en la consulta. Utilice las opciones de mandato para especificarlos.

Nota: Utilice comillas dobles en sistemas Windows y comillas simples en sistemas UNIX y Linux.

Ejemplos

  1. Este ejemplo lista todos los campos de consulta conocidos para las clases de auditoría Project y Step.
    • Windows
      $ bfauditlog.bat -c Project,Step -L
    • UNIX y Linux
      $ bfauditlog.sh -c Project,Step -L 
  2. Este ejemplo muestra los 10 registros de auditoría más recientes para creaciones de proyectos utilizando formato de salida de variables separadas por comas y sin las cabeceras de columnas ni el recuento total de filas. Solamente se dará el identificador exclusivo y nombre del proyecto para cada registro.
    • Windows
      $ bfauditlog.bat -c Project -t CSV -f audit.target,
        sxProjectName --bare -l 10 "audit.type:Create"
    • UNIX y Linux
      $ bfauditlog.sh -c Project -t CSV -f audit.target,
        sxProjectName --bare -l 10 'audit.type:Create' 
  3. Este ejemplo recupera los 100 registros de auditoría más recientes de la instalación de la máquina 'buildforge.example.com' después de iniciar sesión en el dominio y con el nombre de usuario y contraseña proporcionados.
    • Windows
      $ bfauditlog.bat -H buildforge.example.com 
        -d ExampleLDAP -u apiuser -p "My$ecret" -l 100
    • UNIX y Linux
      $ bfauditlog.sh -H buildforge.example.com 
        -d ExampleLDAP -u apiuser -p 'My$ecret' -l 100
  4. Este ejemplo recupera los registros de auditoría registrados desde el inicio del día 23 de mayo de 2011 hasta el final del día 27 de mayo de 2011, de acuerdo con los valores de huso horario del usuario que ha autenticado la conexión.
    • Windows
      $ bfauditlog.bat "audit.stamp:[2011/05/23 TO 2011/05/27]"
    • UNIX y Linux
      $ bfauditlog.sh 'audit.stamp:[2011/05/23 TO 2011/05/27]'
  5. Este ejemplo recupera los registros de auditoría para proyectos cuyos niveles de grupo de acceso se cambiaron de los valores antiguos de 4, 5 o 6 al nuevo valor de 3. Observe que se utilizan corchetes para indicar un rango inclusivo, de modo que '[4 TO 6]' significa que los valores 4 y 6 coincidirán. Observe también que los valores de nivel anterior y nuevo solamente estarán disponibles para la búsqueda si la política de auditoría se ha definido como 'DETAILED'.
    • Windows
      $ bfauditlog.bat -c Project "ioLevel:[4 TO 6] AND inLevel:3"
    • UNIX y Linux
      $ bfauditlog.sh -c Project 'ioLevel:[4 TO 6] AND inLevel:3'
  6. Este ejemplo recupera los registros de auditoría para proyectos cuyos niveles de grupo de acceso se cambiaron de los valores antiguos de 4 o 5 a los nuevos valores de 2 o 3. Observe que se utilizan llaves para indicar un rango exclusivo, de modo que '{3 TO 6}' significa que los valores 3 y 6 no coincidirán. Also note that the old and new level values will only be available to search if the auditing policy has been set to 'DETAILED'.
    • Windows
      $ bfauditlog.bat -c Project "ioLevel:{3 TO 6} AND inLevel:(2 OR 3)"
    • UNIX y Linux
      $ bfauditlog.sh -c Project 'ioLevel:{3 TO 6} AND inLevel:(2 OR 3)'
  7. Este ejemplo restringe la consulta a los resultados para los usuarios de auditoría root y sv y produce la salida en un archivo CSV. Devuelve los datos para las clases Project y Step e incluye la información de la clase, tipo, destino, usuario e indicación de fecha y hora: user, and 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 y 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

Clases

Las clases son etiquetas para entradas de registros de auditoría. Utilice la opción -L para listar las clases disponibles.

Campos

Los campos representan información asignada a cada entrada del registro de auditoría.

Algunos campos del registro de auditoría reflejarán su estado (o para viejo, n para nuevo, x para ampliado), y sus tipos de datos (s para serie, i para entero). Ejemplo:

  soDescription: Descripción anterior del proyecto (serie)
		snDescription: Nueva descripción del proyecto (serie)
		soSelectorUuid:  UUID anterior del selector (serie)
		snSelectorUuid:  Nuevo UUID del selector (serie)
		ioRunLimit:  Límte de ejecución antiguo (entero)
		inRunLimit:  Nuevo límite de ejecución (entero)

Comentarios