Arquitectura interna
Para los desarrolladores y otras partes interesadas, los siguientes diagramas muestran un esquema de la arquitectura interna de EJBCA y las dependencias entre los diferentes módulos.
Descripciones de los módulos EJBCA
Esta es una lista de todos los módulos del directorio modules . Los directorios de pruebas unitarias ( src-test ) están excluidos de esta lista.
Módulo | Construir artefactos, por directorio de origen | Edición | Descripción |
cumbre | src: archivo JAR con implementación | Empresa | Servicio de protocolo ACME (RFC 8555). |
src-common: archivo WAR | |||
interfaz gráfica de usuario de administración | src: archivo WAR | Interfaz web de administración. | |
servidor de aplicaciones-ext | src: Dos archivos JAR con clases de registro | Extensiones del servidor de aplicaciones. Actualmente, contiene clases que extienden log4j. | |
interfaz gráfica de usuario de inscripción por lotes | src: Aplicación independiente | Una aplicación GUI para inscribir masivamente certificados. | |
caa | src: archivo JAR con implementación | Empresa | Validación de autorización de autoridad de certificación (RFC 6844). |
src-cli: Aplicación independiente | |||
almacén de certificados | src: archivo WAR | El servlet de almacén de certificados, que permite descargar certificados. | |
cesecore-común | src: Clases comunes JAR | Clases comunes para el marco CESeCore. | |
cesecore-cvca | src: archivo JAR con implementación | Implementación de CA CVC. Excluido en compilaciones solo para RA y VA. | |
cesecore-ejb | src: SSB EJB | Implementaciones de beans de sesión sin estado CESeCore. | |
Interfaz cesecore-ejb | src: Interfaces EJB SSB | Interfaces para cesecore-ejb | |
entidad cesecore | src: archivo JAR con clases de entidad | Clases de entidad para el marco CESeCore. Corresponden a las tablas de la base de datos. | |
cesecore-p11 | src: archivo JAR | Corrección de seguridad para versiones antiguas de la implementación de SunPKCS11. | |
cesecore-x509ca | src: archivo JAR con implementación | Implementación de X509CA. Excluido en compilaciones solo para RA y VA. | |
guerra de clearcache | src: archivo WAR | Archivo WAR que permite borrar cachés mediante una solicitud HTTP desde localhost. | |
Caja de herramientas del cliente | src: Aplicación independiente | Utilidad de línea de comandos para administrar claves HSM, enviar solicitudes de servicio web, ejecutar pruebas de estrés, etc. | |
cli-util | src: archivo JAR con clases comunes | Clases comunes compartidas por las utilidades de línea de comandos en EJBCA. | |
cliente cmp | src: Aplicación independiente | Empresa | Cliente CMP de línea de comandos. |
cmpProxy | src: Archivo WAR independiente (HTTP o TCP) | Empresa | Archivo WAR independiente. |
común | No hay artefacto de construcción | Configuración predeterminada de log4j para utilidades y pruebas CLI. | |
volcado de configuración | src-cli: Aplicación independiente | Empresa | Configdump permite exportar un archivo YAML de la configuración de EJBCA. No se exportan certificados ni claves. |
src-common: archivo JAR con interfaces | |||
src-ejb: SSB EJB | |||
tienda crl | src: archivo WAR | El servlet de almacenamiento de CRL permite descargar CRL. | |
Connecticut | src: JAR con implementación y extensión OCSP | Empresa | Presentación de certificado de transparencia (RFC 6962). |
específico de la edición | src-ejb: SSB EJB (marcadores de posición para CE) | Interfaces y marcadores de posición para la funcionalidad específica de Enterprise Edition. | |
interfaz src: interfaces EJB SSB | |||
edición específica-ee | src-ejb: SSB EJB (implementaciones reales) | Empresa | Solo EJB de Enterprise Edition. |
ejbca-cmp-tcp | src: archivo WAR | Servidor TCP CMP. Se ejecuta dentro del servidor de aplicaciones si está configurado. | |
ejbca-cmp-war | src: archivo WAR | Interfaz HTTP CMP. Contiene un servlet. | |
ejbca-común | src: archivo JAR con clases de utilidad | Clases de utilidad específicas de EJBCA y que no se utilizan en otros productos que utilizan CESeCore. | |
ejbca-web-común | src: archivo JAR con clases de utilidad | Clases de utilidad que son específicas de las interfaces web EJBCA. | |
ejbca-ejb | src: SSB EJB | Implementaciones de beans de sesión sin estado específicos de EJBCA. | |
ejbca-ejb-cli | src: Aplicación independiente | Utilidad de línea de comandos para operar EJBCA a través de la interfaz EJB remota. | |
interfaz ejbca-ejb | src: Interfaces EJB SSB | Interfaces para ejbca-ejb. | |
entidad ejbca | src: archivo JAR con clases de entidad | Clases de entidad específicas de EJBCA. Corresponden a tablas en la base de datos. | |
src-cli: Aplicación independiente (ejbca-db-cli.jar) | Empresa | Herramienta CLI de base de datos para migrar entre bases de datos y para gestionar la protección de bases de datos. | |
ejbca-propiedades | Archivo JAR con propiedades | Los archivos de propiedades de conf/, conf/plugins/ y src/upgrade/ | |
ejbca-renovar-guerra | src: archivo WAR | Renovación de certificados mediante autoservicio en la web pública. | |
ejbca-rest-api | src: archivo WAR | Empresa | GUERRA con punto de entrada para la API REST. |
ejbca-rest-* | src: archivo JAR con recurso REST | Empresa | Recurso REST para diferentes partes de la API (común, camanagement, cryptotoken). |
ejbca-scep-war | src: archivo WAR | Protocolo SCEP para la creación y renovación de certificados. | |
ejbca-webdist-war | src: archivo WAR | CertDistServlet que implementa la descarga de certificados y CRL. | |
ejbca-webtest | No hay artefacto de construcción | Este módulo contiene pruebas de Selenium para AdminWeb, PublicWeb y RA Web. | |
ejbca-ws | src: Archivos JAR con interfaz e implementación | Este es el módulo para la interfaz WebService (SOAP). | |
ejbca-ws-cli | src: Archivos JAR con el módulo WS de ClientToolBox | Este módulo está incluido en ClientToolBox y proporciona un cliente de servicio web (SOAP). | |
est | src-war: archivo WAR | Empresa | Proporciona una interfaz de protocolo EST a EJBCA. |
externalra | src: archivos JAR para el cliente y el servicio | Empresa | ExternalRA es un módulo heredado para ejecutar una Autoridad de Registro externa. Consiste en un servicio integrado en EJBCA y una interfaz web externa. |
src: Aplicación independiente (externalra-cli.jar) | |||
interfaz gráfica de usuario externa | src: archivo WAR | Empresa | La parte GUI web de ExternalRA, que se implementará en un servidor remoto. |
externalra-scep | src: Aplicación independiente | Empresa | Cliente SCEP para ExternalRA. |
guerra de chequeos de salud | src: archivo WAR | Proporciona una URL de verificación de estado para verificar el estado de CA. | |
oldlogexport-cli | src: Aplicación independiente | Herramienta para exportar la tabla de base de datos LogEntryData heredada a un archivo. | |
conector de pares | src-cli: archivos JAR con subcomandos para ejbca-ejb-cli | Empresa | Módulo para gestionar conexiones entre pares, como CA-RA o CA-VA. |
src-common: archivo JAR con clases comunes | |||
src-ejb: SSB EJB | |||
interfaz src: interfaz EJB SSB | |||
src-publ: archivo JAR con clases para gestionar la comunicación entre editores pares | |||
src-ra: archivo JAR con clases para gestionar la comunicación entre pares de RA | |||
src-rar: archivo RAR | |||
src-war: archivo WAR | |||
complementos-ee | src: archivo JAR | Complementos adicionales, como Publishers, incluidos solo en Enterprise Edition. | |
interfaz gráfica de usuario web pública | src: archivo WAR | Las páginas web públicas de EJBCA (URL/ejbca/). | |
ra-gui | src: archivo WAR | Las páginas web de EJBCA RA (URL /ejbca/ra/). | |
vertedero declarado | src-cli: Aplicación independiente | Interno | Statedump es una herramienta interna de PrimeKey, no incluida en las versiones EJBCA. Es la predecesora de Configdump. |
src-common: archivo JAR con clases comunes | |||
src-ejb: EJB SSB | |||
pruebas del sistema | src: SSB EJB | Contiene pruebas funcionales de EJBCA. Requieren que un servidor de aplicaciones esté en ejecución. Los EJB proporcionan acceso EJB remoto adicional que requiere la prueba y solo se integran en el servidor de aplicaciones cuando el modo de producción se establece en falso. | |
interfaz src: interfaces EJB SSB | |||
unidfnr | src-ejb: EJB SSB y entidad | Empresa | UNID-FNR permite que los clientes OCSP autenticados obtengan información personal de un identificador de certificado. |
Virginia | src-war: archivo WAR | Servlet de respuesta OCSP. | |
herramienta de validación | src: Aplicación independiente | Empresa | Aplicación de línea de comandos para validar certificados. |
Diagrama de base de datos
Nota: Este diagrama está actualizado a partir de EJBCA 7.8.1
