Instalación
La instalación de la aplicación contempla los siguientes apartados:
Cliente
No aplica.
Servidor
Para la instalación de la aplicación en el servidor será necesario:
- Crear datasource
- Incluir el driver JDBC del sistema gestor de BD en Tomcat
- Creación de directorios donde alojará: licencia, logs, auditoria
- Configurar en el servidor de aplicaciones la ruta donde se encuentra el fichero de propiedades del aplicativo
El proceso de despliegue es sencillo. Con el servidor de aplicaciones parado (aunque puede estar levantado, es recomendable pararlo), se copia el war en la carpeta /webapps de Tomcat. Posteriormente se debe arrancar el servidor. Por defecto Tomcat tiene activo el autodeploy, por esta razón cuando encuentre un nuevo WAR en dicha carpeta lanzará el deploy de forma automática, descomprimiendo el WAR en /webapps en un directorio con el mismo nombre al del WAR sin la extensión. La aplicación quedará desplegada bajo el contexto /fortress.
Base de datos
Creación del DataSource
Debe definirse un DataSource para el acceso a la BBDD. Puede definir las propiedades del DataSource en el descriptor de contexto en tomcat/conf/Catalina/
Dicho dataSource se puede definir de varias formas:
- Definir por su nombre jndi:
El DataSource debe tener por nombre “jdbc/fortress” y seguir un esquema similar al siguiente ejemplo, indicando el username, password y la URL que corresponda:
<Resource name="jdbc/fortress" auth="Container"
type="javax.sql.DataSource" maxActive="100" maxIdle="30" maxWait="10000"
username="fortress"
password="********"
url="jdbc:postgresql:fortress"/>
Y configurar en el contexto dicho Datasource
<Context>
<Parameter name="spring.datasource.jndi-name" value="jdbc/fortress" />
</Context>
- Definir directamente el datasource en el contexto
<Context>
<Parameter name="spring.datasource.url" value="your URL" />
<Parameter name="spring.datasource.username" value="your username" />
<Parameter name="spring.datasource.password" value="your password" />
</Context>
- Definir la ruta de acceso a un fichero de properties y establecer aquí su configuración:
<Context>
<Parameter name="spring.config.location" value="/path/to/fortress.properties" />
</Context>
Establecer en el fichero de propiedades, las propiedades del datasource, tal y como se indica a continuación
# DATASOURCE
spring.datasource.url=jdbc:postgresql://[IP base datos]:[puerto]/fortress
spring.datasource.username=[usuario base de datos]
spring.datasource.password=[contraseña usuario de base de datos]
Inclusión del driver de Jdbc
Será necesario copiar el driver JDBC en la carpeta /lib de la instalación de Tomcat:
/<TOMCAT_HOME>/lib
Informes
No aplica.
Otros
Creación de directorios:
Se deben crear los siguientes directorios para diferentes funcionalidades:
directorio licencia fortress
Fortress como producto, emplea una licencia para permitir su empleo, como se verá al configurar los parámetros de configuración del aplicativo, Fortress utiliza la variable fortress.license.path para alojar el path al archivo que contiene la licencia.
# LICENSE
fortress.license.path=file:/path/to/fortress.license/fortress.lic
directorio log fortress
Fortress emplea logback para generar el log del aplicativo, permitiendo personalizar el mismo según las necesidades del cliente. En caso de no alojar los ficheros de log en el propio servidor de aplicaciones, será necesario crear tantos directorios como se indiquen en el fichero logback.xml
Por ejemplo, se puede definir en el archivo logback.xml que los archivos de log se almacénen en la carpeta de logs del servidor de aplicaciones donde se encuentra desplegado fortress
<property name="LOGS_FOLDER" value="${catalina.base}/logs" />
O por el contrario, crear una estructura de carpetas externas al servidor de aplicaciones e indicar los valores correspondientes en las variables anteriormente definidas.
Directorio proceso de firma
Fortress emplea un directorio base, que emplea en el proceso de firma y que se define en la variable fortress.signature.home.
fortress.signature.home=/home/ubuntu/fortress
En dicho directorio, podremos encontrar diversas subcarpetas y archivos, entre otras:
- directorio auditory.- Aloja ficheros de auditoria de las firmas realizadas
- directorio custody.- Directorio donde persistirán los documentos firmados si la custodia está activada, la activación de la custodia se indica en la siguiente variable:
fortress.signature.custodyStorage=true
- directorio cache-tsl.- contiene certificados y ficheros xml con las estructuras de certificados que permitirá emplear Fortress en el proceso de firma.
Firectorio almacén de certificados
Fortress emplea un almacén de certificados, donde se alojan los distintos certificados asociados a las CAs que empleará Fortress en el proceso de firma. La ruta al almacén de certificados se indica en la siguiente variable del fichero de propiedades.
fortress.signature.trusted_keystore.path=/home/ubuntu/fortress/trusted_cacerts.jks
Configuración del log del aplicativo
Crear el archivo fortress-logback.xml y alojarlo en la estructura de carpetas deseada en el servidor. Es necesario indicar la ruta donde se encuentra el fichero fortress-logback.xml en la siguiente variable del fichero de propiedades.
logging.config==/home/ubuntu/fortress/fortress-logback.xml
A continuación mostramos un ejemplo de definición del archivo fortress-logback.xml
<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true" scanPeriod="30 seconds">
<property name="LOGS_FOLDER" value="${catalina.base}/logs"/>
<appender name="log-file"
class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${LOGS_FOLDER}/fortress.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>${LOGS_FOLDER}/fortress.%d{yyyyMMdd}.log</fileNamePattern>
</rollingPolicy>
<encoder>
<pattern>%d{dd/MM/yyyy HH:mm:ss.SSS} [%thread] %level %logger{36} - %m %throwable%n</pattern>
</encoder>
</appender>
<logger name="com.viafirma.fortress" level="INFO"/>
<logger name="org.springframework.web" level="INFO"/>
<root level="ERROR">
<appender-ref ref="log-file"/>
</root>
</configuration>
results matching ""
No results matching ""