Eventos de auditoría de seguridad
Los eventos de auditoría de seguridad se dividen en columnas, servicios, módulos, estados y eventos según su origen.
A continuación se enumeran y describen los diferentes tipos de eventos y la descripción general también está disponible en formato JavaDoc de la API.
Tenga en cuenta que, dado que EJBCA está construido alrededor del proyecto CESeCore, se deben considerar tanto EventTypes como EjbcaEventTypes en la documentación de la API para ver todos los tipos de eventos que EJBCA puede generar.
Un ejemplo de cómo se vería un evento de este tipo en el registro del servidor usando Log4jDevice es el evento en el que se inicia la aplicación:
... INFO [Log4jDevice] 2015-03-20 12:47:51+01:00;EJBCA_STARTING;SUCCESS;SERVICE;EJBCA;StartServicesServlet.init;;hostname;;msg=Init, EJBCA 6.7.0 Enterprise (r25420) startup.y el mismo tipo de evento que utiliza IntegrityProtectedDevice que escribe la entrada de registro en la base de datos:
mysql> select * from AuditRecordData where eventType='EJBCA_STARTING' ... \Gpk: 24861ebf7f00010106e5a024d82c694dadditionalDetails: ... Init, EJBCA 6.7.0 Enterprise (r25420) startup. ...authToken: StartServicesServlet.initcustomId: NULLeventStatus: SUCCESSeventType: EJBCA_STARTINGmodule: SERVICEnodeId: hostnamerowProtection: 1:2:123:4d2f6...rowVersion: 0searchDetail1: hostnamesearchDetail2: NULLsequenceNumber: 17640195service: EJBCAtimeStamp: 1426205614754Esto debe interpretarse de la siguiente manera:
El servicio es EJBCA (no se muestra en la GUI de administración): el evento se origina en la parte de la aplicación que no es parte del núcleo compartido con otros productos.
El módulo es SERVICIO: este evento se generó desde un módulo en EJBCA que es responsable de los servicios en segundo plano.
El estado (denominado "Resultado" en la GUI de administración) es ÉXITO: en el contexto del evento, esto debe interpretarse como que no se detectaron errores durante el inicio de EJBCA.
El evento es EJBCA_STARTING: la aplicación EJBCA se está iniciando.
AdditionalDetails es un mensaje específico del evento con información adicional que nos indica (en este caso) la versión de EJBCA que se inició.
AuthToken identifica que el evento fue generado por el módulo interno StartServicesServlet
NodeId es el nodo EJBCA, en este caso el nombre de host, que generó el evento
SearchDetail1 es un mensaje adicional, en este caso el nombre de host (mismo que NodeId) en el que se inició EJBCA.
TimeStamp es el tiempo, en milisegundos desde la época, en que ocurrió el evento
Columnas
La siguiente tabla incluye descripciones de los nombres de las columnas de registro y una asignación entre los nombres de las columnas y los nombres para mostrar en la GUI de administración.
Nombre de la columna | Descripción | Nombre para mostrar en la interfaz de usuario del administrador |
Servicio | El servicio del que se origina un evento, EJBCA o CORE. | (no se muestra) |
Módulo | El módulo desde el cual se generó un evento. | Módulo |
Estado | ÉXITO o FRACASO | Resultado |
Evento | El evento del registro de auditoría que ocurrió. | Evento |
Detalles adicionales | Mensaje específico del evento con información adicional. | Detalles |
Token de autorización | Identifica al administrador, o módulo interno, que causó el evento. | Administrador |
NodeId | Identifica la instancia EJBCA (qué servidor en un clúster) en la que ocurrió el evento. | Nodo |
ID personalizado | Identificador utilizado en mensajes de registro, comúnmente la autoridad de certificación con la que se relacionó un evento. | Autoridad de certificación |
búsquedaDetalle1 | Detalle utilizado en los mensajes de registro, comúnmente el número de serie del certificado con el que se relaciona un evento. | Certificado |
búsquedaDetalle2 | Detalle utilizado en los mensajes de registro, comúnmente el nombre de usuario con el que se relaciona un evento. | Nombre de usuario |
marca de tiempo | El tiempo, en milisegundos desde la época, en que ocurrió el evento. | Tiempo |
Servicios
El servicio puede ser EJBCA o CORE . Ambos provienen de la aplicación EJBCA, pero los servicios que se originan en CORE provienen de una parte, CESeCore, que contiene funciones compartidas con otros productos. Estos servicios se relacionan con los tipos de evento que se indican a continuación.
Esto no es importante desde una perspectiva de auditoría, pero es información útil para comprender el formato de registro.
Servicio | Evento |
CENTRO | Eventos CESeCore |
EJBCA | Eventos de la EJBCA |
Módulos
El Registro de Auditoría de Seguridad tiene un componente: el Módulo. Este módulo describe el módulo interno de EJBCA donde ocurrió el evento y puede ser útil para categorizar eventos.
Los módulos también están documentados en el código fuente en ModuleTypes.java y EjbcaModuleTypes.java.
Módulo | Descripción |
CONTROL DE ACCESO | Módulo de control de acceso |
AUTENTICACIÓN | Módulo de autenticación |
California | Módulo de autoridad de certificación |
CERTIFICADO | Módulo de emisión y gestión de certificados |
PERFIL DEL CERTIFICADO | Módulo de perfil de certificado |
CRL | Módulo de emisión y gestión de listas de revocación de certificados |
CRIPTOTOKEN | Módulo de token criptográfico |
LISTA NEGRA | Módulo de lista de bloqueos |
VALIDADOR | Módulo validador |
ROLES | Módulo de gestión de roles de administrador |
AUDITORÍA DE SEGURIDAD | Módulo de registro de auditoría de eventos de seguridad |
ASOCIACIÓN DE TECLAS INTERNAS | Módulo de enlace de teclas interno |
CONFERENCIA GLOBAL | Módulo para configuraciones del sistema almacenadas en la base de datos |
REAL ACADEMIA DE BELLAS ARTES | Módulo de Autoridad de Registro |
TOKEN DURO | Módulo de gestión de tokens de hardware (cliente) |
RECUPERACIÓN DE LLAVES | Módulo de recuperación de claves |
APROBACIÓN | Módulo de aprobación |
PERFIL DE APROBACIÓN | Módulo Perfiles de Aprobación |
EDITOR | Módulo de editor |
SERVICIO | Módulo de servicio en segundo plano EJBCA |
COSTUMBRE | Módulo de registro externo |
ADMINWEB | Módulo GUI web administrativo |
Estado
El resultado de un evento puede ser uno de los siguientes:
El estado también está documentado en el código fuente en EventStatus.java
Estado | Descripción |
FALLA | Operación fallida |
ÉXITO |
La operación tuvo éxito |
VACÍO | Operación completada sin un resultado definido |
Eventos
Los Eventos de Seguridad se dividen en dos partes. La separación lógica es que los Eventos CESeCore son eventos centrales de PKI necesarios para las operaciones con certificación Common Criteria y se almacenan en un módulo central que se reutiliza en diferentes productos PrimeKey. Mantenemos esta separación en la documentación para simplificar.
Ejemplo de evento de archivo de registro
El registro de inicio de EJBCA incluso se verá así en el archivo de registro del servidor de aplicaciones.
2017-03-25 07:26:04+01:00;EJBCA_STARTING;SUCCESS;SERVICE;EJBCA;Application internal;;hostname;;msg=Init, EJBCA 6.7.0 Enterprise (r25420) startup. Eventos CESeCore
Los tipos de eventos de CESeCore también están documentados en el código fuente en EventTypes.java.
Tipo de evento | Descripción |
CONTROL DE ACCESO | Comprobación de autorización al recurso de la entidad autenticada |
AUTENTICACIÓN | Comprobación de autenticación de una entidad |
CA_CREACIÓN | Creación de una autoridad de certificación |
CA_ELIMINACIÓN | Eliminación de una autoridad de certificación |
CA_RENOMBRAR | Cambio de nombre de aplicación interna de una Autoridad de Certificación. No relacionado con el Nombre Distinguidor de Sujeto de la Autoridad de Certificación. |
CA_EDICIÓN | Modificación de una autoridad de certificación |
CA_KEYACTIVATE | La autoridad de certificación comienza a utilizar un par de claves diferente |
CA_KEYGEN | Generación de un nuevo par de claves que puede ser utilizado por la Autoridad de Certificación durante la renovación o actualización |
CA_SERVICEACTIVATE | Cambio de estado de la autoridad de certificación para empezar a atender solicitudes. No relacionado con la disponibilidad de la clave privada de la CA. |
CA_SERVICEDEACTIVATE | Cambio de estado de la autoridad de certificación para dejar de atender solicitudes. No relacionado con la disponibilidad de la clave privada de la CA. |
CERTIFICADO ALMACENADO | Persistencia de un certificado en la base de datos |
CERTIFICADO REVOCADO | Cambio del estado de un certificado a revocado o activo |
CERT_CHANGEDSTATUS | Cambio del estado de un certificado a no asignado, inactivo, activo, notificado sobre vencimiento, revocado o archivado |
SOLICITUD DE CERTIFICADO | Se envía una solicitud de emisión de certificado a una autoridad de certificación |
CREACIÓN DE CERTIFICADO | Emisión de un certificado por una Autoridad de Certificación |
ENVÍO DE CERTIFICADO CTPRECERT | Los servidores de registro de Transparencia de certificados responden a un envío de precertificado de una Autoridad de certificación |
CREACIÓN DE PERFIL DE CERTIFICADO | Creación de un perfil de certificado |
CERTPROFILE_DELETION | Eliminación de un perfil de certificado |
CERTPROFILE_RENOMBRAMIENTO | Cambio de nombre de un perfil de certificado |
EDICIÓN DE PERFIL DE CERTIFICADO | Modificación de un perfil de certificado |
CRL_ALMACENADO | Persistencia de una Lista de Revocación de Certificados en la base de datos |
CREACIÓN DE CRL | Emisión de una lista de revocación de certificados por una autoridad de certificación |
CREAR CRIPTOKEN | Creación de un token criptográfico |
EDICIÓN DE CRIPTOKEN | Modificación de un token criptográfico |
ELIMINACIÓN DE CRYPTOTOKEN | Eliminación de un token criptográfico |
ACTIVACIÓN DE CRYPTOTOKEN | Activación de un token criptográfico, haciendo que el material clave esté disponible para su uso por parte de la aplicación |
DESACTIVACIÓN DE CRYPTOTOKEN | Desactivación de un token criptográfico, lo que hace que el material clave no esté disponible para su uso por parte de la aplicación |
REACTIVACIÓN DE CRYPTOTOKEN | Se intentó reactivar un token criptográfico. Dado que esto ocurre automáticamente, podría fallar. |
ENTRADA DE ELIMINACIÓN DE CRYPTOTOKEN | Eliminación de un par de claves del material de claves del Crypto Token o de un marcador de posición de par de claves del objeto Crypto Token |
PAR DE CLAVES DE CRYPTOTOKEN_GEN | Generación de un nuevo par de claves en el Crypto Token |
PIN DE ACTUALIZACIÓN DE CRYPTOTOKEN | Modificación del PIN de activación automática del token criptográfico. Para las tiendas de claves virtuales, esto también implica cambios en la protección del material de la clave. |
CAMBIO DE LISTA NEGRA | Modificación de una lista de bloqueo existente |
CREACIÓN DE LISTA NEGRA | Creación de una nueva lista de bloqueos |
ELIMINACIÓN DE LA LISTA NEGRA | Eliminación de una lista de bloqueo existente |
CAMBIO DE VALIDADOR | Modificación de un validador existente |
CREACIÓN DEL VALIDADOR | Creación de un nuevo validador |
ELIMINACIÓN DEL VALIDADOR | Eliminación de un validador existente |
VALIDADOR_RENOMBRAR | Cambio de nombre de un validador existente |
VALIDACIÓN DEL VALIDADOR FALLÓ | Evento de validación fallida |
BORRAR REGISTRO | Eliminación de registros de auditoría persistentes |
EXPORTACIÓN DE REGISTRO | Exportación de registros de auditoría |
CAMBIO DE GESTIÓN DE REGISTROS | Cambio de la configuración de protección para los registros de auditoría |
VERIFICACIÓN DE REGISTRO | Verificación de los registros de auditoría existentes |
CREACIÓN DE ROL | Creación de un rol administrativo |
ELIMINACIÓN DE ROL | Eliminación de un rol administrativo |
RENOMBRAMIENTO DE ROL | Cambio de nombre de un rol administrativo |
ADICIÓN DE REGLAS DE ACCESO A ROL | Nuevas reglas de acceso agregadas al rol administrativo |
CAMBIO DE REGLAS DE ACCESO A ROL | Modificaciones de las reglas de acceso existentes en un rol administrativo |
ELIMINACIÓN DE REGLAS DE ACCESO A ROL | Eliminación de reglas de acceso existentes del rol administrativo |
ADICIÓN DE USUARIO DE ACCESO A ROL | Nuevo administrador agregado al rol administrativo |
CAMBIO DE USUARIO DE ACCESO A ROL | Cambio de administrador existente en un rol administrativo |
ACCESO_DE_ROL_ELIMINACIÓN_DE_USUARIO | Eliminación del administrador existente del rol administrativo |
CREACIÓN DE CONFIGURACIÓN DEL SISTEMA | Creación de nuevas configuraciones del sistema almacenadas en la base de datos |
EDITAR CONFIGURACIÓN DEL SISTEMA | Modificación de la configuración del sistema existente almacenada en la base de datos |
CREACIÓN DE ENLACE DE TECLAS INTERNO | Creaciones de una nueva vinculación de teclas interna |
EDICIÓN DE COMBINACIÓN DE TECLAS INTERNAS | Modificación de una vinculación de teclas interna existente |
ELIMINACIÓN DE TECLAS INTERNAS | Eliminación de una vinculación de teclas interna existente |
Eventos de la EJBCA
Los tipos de eventos EJBCA también están documentados en el código fuente en EjbcaEventTypes.java.
Tipo de evento | Descripción |
ADMINWEB_ADMINISTRATORLOGGEDIN | Un administrador inicia sesión en la GUI web administrativa de EJBCA |
APROBACIÓN_AÑADIR | Se solicita una acción que requiere la aprobación de uno o más administradores |
APROBACIÓN_APROBAR | La acción que requiere aprobación fue aprobada por uno de los administradores requeridos |
APROBACIÓN_EDITAR | Se editó la solicitud de aprobación |
APROBACIÓN_RECHAZADA | La acción que requiere aprobación fue rechazada por uno de los administradores requeridos |
APROBACIÓN_EXTENDER | La fecha de vencimiento de una solicitud de aprobación fue extendida por un administrador |
APROBACIÓN_PERFIL_AÑADIR | Agregar un perfil de aprobación |
EDICIÓN DE PERFIL DE APROBACIÓN | Editar un perfil de aprobación |
APROBACIÓN_PERFIL_ELIMINAR | Eliminar un perfil de aprobación |
APROBACIÓN_RENOMBRAR_PERFIL | Cambiar el nombre de un perfil de aprobación |
CA_EXPORTTOKEN | Exportación de un token criptográfico (blando) de una autoridad de certificación |
CA_SERVICIO EXTENDIDO | Ejecución de uno de los servicios extendidos de la Autoridad de Certificación |
CA_IMPORT | Creación de una autoridad de certificación utilizando un almacén de claves programable existente |
CA_REMOVETOKEN | Eliminación del token criptográfico (blando) de una autoridad de certificación |
CA_RENOVEDADO | Renovación del certificado de una autoridad certificadora, utilizando opcionalmente un par de claves diferente |
CA_ROLLEDOVER | Transferencia de la cadena de certificados y la clave de una autoridad de certificación |
CA_RESTORETOKEN | Restauración de un token criptográfico (suave) previamente eliminado de una autoridad de certificación |
CA_REVOCADO | Revocación de una Autoridad Certificadora y de todos los certificados emitidos por ella |
CA_SIGNREQUEST | La autoridad certificadora firma (atenta) una solicitud de firma de certificado proporcionada |
CA_SIGNCMS | La autoridad certificadora firma (certifica) un CMS / PKCS#7 |
CA_USERAUTH | La entidad final se autentica mediante el código de inscripción |
CA_VALIDEZ | El certificado de firma de la autoridad certificadora aún no es válido o ya no es válido |
ERROR DE REGISTRO PERSONALIZADO | Entrada de registro con error de nivel de registro suministrado desde una fuente externa |
INFORMACIÓN DE REGISTRO PERSONALIZADO | Entrada de registro con información de nivel de registro suministrada desde una fuente externa |
EJBCA_INICIO | Inicio de la aplicación |
AÑADIR TOKEN DURO | Creación de una nueva representación de token de hardware (cliente) |
MAPA DE CERTIFICADO DE AÑADIDO DE TOKEN HARD |
Creación de un enlace desde una representación de token de hardware (cliente) a un certificado |
ADICIONAL DE TOKEN DURO | Creación de un nuevo emisor para tokens de hardware (de cliente) |
PERFIL_ADD_TOKEN_DURO | Creación de una nueva plantilla para tokens de hardware (de cliente) |
EDICIÓN DE TOKEN DURO | Modificación de una representación de token de hardware (cliente) existente |
EMISOR DE EDICIÓN DE TOKEN DURO | Modificación o cambio de nombre de un emisor existente de tokens de hardware (de cliente) |
PERFIL DE EDICIÓN DE TOKEN DURO | Modificación o cambio de nombre de una plantilla existente para tokens de hardware (de cliente) |
GENERAR TOKEN DURO | Resultado del aprovisionamiento de un token de hardware (cliente) informado por el sistema de gestión de tarjetas externo |
ELIMINAR TOKEN DURO | Eliminación de una representación de token de hardware (de cliente) existente |
MAPA DE CERTIFICADO DE ELIMINACIÓN DE TOKEN DURO | Eliminación del vínculo de una representación de token de hardware (cliente) a un certificado |
ELIMINAR EMISOR DE TOKEN DURO | Eliminación de un emisor existente de tokens de hardware (de cliente) |
HARDTOKEN_REMOVEPROFILE | Eliminación de una plantilla existente para tokens de hardware (de cliente) |
TOKEN DURO VISUALIZADO | El administrador visualiza el contenido de una representación de token de hardware (cliente) |
TOKEN_HARD_VIEWEDPUK | El administrador visualiza el código PUK de una representación de token de hardware (cliente) |
RECUPERACIÓN DE LLAVES_ADDDATA | Persistencia de material de clave cifrado y metadatos que se pueden utilizar para recuperar un par de claves de cliente generado por el servidor |
RECUPERACIÓN DE LLAVES_EDITDATA | Modificación del material de clave cifrado y metadatos que se pueden utilizar para recuperar un par de claves de cliente generado por el servidor |
RECUPERACIÓN DE LLAVES_MARCADO | Cambiar el estado de los metadatos del material de clave cifrada para permitir la extracción del par de claves de cliente generado por el servidor |
RECUPERACIÓN DE LLAVES_DATOS ELIMINADOS | Eliminación de material de clave cifrado específico o completo y metadatos que se pueden usar para recuperar un par de claves de cliente generado por el servidor |
RECUPERACIÓN DE LLAVES_ENVIADAS | Extracción de material clave del par de claves de cliente generado por el servidor |
CAMBIO DE EDITOR | Modificación de un editor existente |
CREACIÓN DEL EDITOR | Creación de una nueva editorial |
ELIMINACIÓN DEL EDITOR | Eliminación de un editor existente |
EDITOR RENOMBRAR | Cambio de nombre de una editorial existente |
CERTIFICADO DE LA TIENDA DEL EDITOR | Publicación de un certificado y/o metadatos del certificado relacionado |
CRL DE LA TIENDA DEL EDITOR | Publicación de una lista de revocación de certificados y metadatos relacionados |
RA_ADDADMINPREF | Creación de nuevas configuraciones para un administrador |
RA_ADDEEPROFILE | Creación de un nuevo perfil de entidad final |
RA_ADDENDENTITY | Creación de una nueva entidad final |
RA_DEFAULTADMINPREF | Modificación de la configuración predeterminada para administradores |
RA_DELETEENDENTITY | Eliminación de una entidad final |
RA_EDITADMINPREF | Modificación de una configuración existente para un administrador |
RA_EDITEEPERFIL | Modificación de un perfil de entidad final existente |
RA_EDITENDENTIDAD | Modificación de una entidad final existente |
RA_REMOVEEEPROFILE | Eliminación de un perfil de entidad final existente |
RA_RENOMBRARPERFIL | Cambio de nombre de un perfil de entidad final existente |
RA_REVOKEDENDENTITY | Cambiar el estado de una entidad final existente y todos los certificados de la entidad final a revocados |
RA_USERDATASOURCEADD | Creación de una nueva fuente de datos de usuario |
RA_EDITARORIGINALDEDATOSDEUSUARIO | Modificación de una fuente de datos de usuario existente |
RA_USERDATASOURCEFETCHDATA | Recuperación de datos a través de una fuente de datos de usuario existente |
RA_ELIMINAR FUENTE DE DATOS DEL USUARIO | Eliminación de una fuente de datos de usuario existente |
RA_USERDATASOURCEREMOVEDATA | Solicitud de eliminación de datos a través de una fuente de datos de usuario existente |
RA_USERDATASOURCERENAME | Cambio de nombre de una fuente de datos de usuario existente |
REVOCAR_UNREVOKEPUBLISH | Publicación de un certificado y/o metadatos del certificado relacionado cuando el certificado se activa después de estar en espera |
SERVICIO_AÑADIR | Creación de un nuevo servicio en segundo plano EJBCA |
SERVICIO_EDIT | Modificación de un servicio en segundo plano EJBCA existente |
SERVICIO_ELIMINAR | Eliminación de un servicio en segundo plano EJBCA existente |
SERVICIO_RENOMBRAR | Cambio de nombre de un servicio en segundo plano EJBCA existente |