1. Introducción

Este manual describe la configuración de los componentes del lado del servidor de la aplicación GBS BEST Server. GBS BEST Server es una aplicación de backend que es utilizada por GBS Apps 2.

El procedimiento de configuración debe realizarse solo después del paso de instalación. Para obtener más información, consulte el Manual de configuración de GBS Apps.

2. Configuración

Los pasos de configuración son:

  1. Configurar Tomcat;
  2. Configurar Certificados;
  3. Generar contraseña encriptada;
  4. Finalizar la configuración en el archivo config.properties.

Todos los pasos se describen a continuación. Un ejemplo de archivo config.properties se encuentra en la sección Ejemplo de archivo de configuración.

Danger

Todas las líneas deben estar presentes en el archivo de configuración. Comentar o eliminar líneas puede causar un comportamiento inesperado. Para obtener más información, comuníquese con el equipo de soporte de Griaule.

2.1. Configuración de Tomcat

Edite el archivo de configuración de Tomcat para configurar los certificados y el puerto que la aplicación utilizará.

vi /var/lib/tomcats/best/conf/server.xml

Para cambiar el puerto, busque connector port=. Este es el puerto para las operaciones de backend.

2.2. Configuración de Certificados

Para habilitar la autenticación SSL, busque connector port= en el archivo /conf/server.xml.

Hay dos entradas. La comentada es la configuración para SSL. Elimine los delimitadores de comentario <!-- y -->, y ajuste estas configuraciones:

port="58194"
keystoreFile="/home/griaule/keystore"
keystorePass="password"
keyAlias="1"
clientAuth="true"
truststoreFile="/home/griaule/keystore"
truststorePass="password"

El puerto debe ser el puerto de red deseado para la aplicación.

Cambie la ruta de keystoreFile y truststoreFile a los valores adecuados. Haga lo mismo para keystorePass y truststorePass.

El parámetro clientAuth="true" requerirá autenticación del lado del servidor al lado del cliente y del lado del cliente al lado del servidor. Esto significa que el cliente deberá importar el certificado en el navegador para poder acceder a la aplicación GBS Apps 2.

Warning

Cuando clientAuth está configurado en verdadero, el administrador del sistema debe proporcionar el archivo certificate.pfx a los usuarios finales.

2.3. Encriptación de contraseña de base de datos

El parámetro jdbc.password del archivo config.properties es una contraseña encriptada. Para generar la contraseña encriptada, realice los siguientes pasos:

  1. Vaya al siguiente directorio:

    cd /var/lib/tomcats/best/webapps/gbs-best-server/WEB-INF/lib
    
  2. Ejecute el siguiente comando:

    java -cp gbs-common-db-<version>.jar com.griaule.commons.util.EncryptUtil <desiredPassword>``
    
  3. La contraseña encriptada se mostrará después del mensaje: “Encrypted password is:”

Note

Guarde esta contraseña encriptada. Se utilizará en el siguiente paso.

2.4. Filtro de búsqueda: Etiqueta

Algunas configuraciones de BEST se pueden realizar a través de las bases de datos, como las etiquetas de búsqueda. La etiqueta de búsqueda es una lista de etiquetas que el usuario puede seleccionar en la configuración de búsqueda de fragmentos para restringir la lista de candidatos.

Para configurar las etiquetas deseadas, debe incluir las etiquetas en la fila search.labels en la tabla sphinx.settings. Tenga en cuenta que las etiquetas deben estar separadas por comas.

Esas etiquetas serán visibles para todos los usuarios de BEST.

2.5. Archivo de propiedades de la aplicación

El último paso es configurar el archivo de propiedades de la aplicación:

vi /var/lib/tomcats/best/conf/config.properties

Los cambios más importantes en este archivo de configuración son las propiedades jdbc.url, jdbc.username, jdbc.password y gbds.url. Configure los parámetros de acuerdo con el entorno.

El archivo de configuración completo se muestra en la sección Ejemplo de archivo de configuración.

Note

Recuerde sustituir la contraseña encriptada correcta generada en la sección Encriptación de contraseña de base de datos en el archivo.

2.5.1. Etiqueta de segregación de casos

Es posible segregar los casos que un usuario ve en el software. Para hacerlo, es necesario agregar un permiso en la configuración de LDAP.

Dentro de un grupo de usuarios, agregue la etiqueta en el formato best_org_{desired_label}, por ejemplo, best_org__MG. Los nuevos casos creados por los usuarios en ese grupo tendrán esta etiqueta y solo serán visibles para los usuarios con los permisos correctos.

Note

Los casos creados antes de la adición de esta etiqueta no serán modificados.

2.5.2. Uso de múltiples nodos

BEST se puede utilizar en más de un nodo de servidor. Para permitirlo, el servidor principal debe tener la configuración poolingUL.active establecida en true, y otros nodos deben tenerla establecida en false.

Important

Recuerde establecer un equilibrio de carga entre los nodos si utiliza este método.

2.5.3. Configuración web de BEST

El último paso es configurar la dirección IP y el puerto de la aplicación a la que accederá el usuario final. Debe ser la misma dirección IP y puerto configurados en la sección Configuración de Tomcat.

best.ip=<ip>
best.port=<port>
best.protocol=<protocol>

Important

Asegúrese de que los parámetros de configuración best.ip, best.port y best.protocol estén correctamente especificados en el archivo config.properties. En muchos casos, la IP será la misma para varias aplicaciones. Sin embargo, cada aplicación tendrá un puerto diferente y único.

3. Finalización de la configuración

Después de completar todos los pasos de configuración, vuelva a la sección Manual de configuración de aplicaciones GBS - Sección de configuración.

4. Ejemplo de archivo de configuración

Esta sección muestra un ejemplo del archivo config.properties.

# GBS BEST Server

jdbc.driverClassName=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://192.168.0.200:3306/forensic?useSSL=false
jdbc.username=root
jdbc.password=CDrt8vbewA2YAubPNOLZkw==
jdbc.dialect=org.hibernate.dialect.MySQLDialect
jdbc.showSql=false

# GBDS connection
gbds.url=http://192.168.0.200:8085
gbds.user=admin
gbds.key=griaule123
gbds.logLevel=DEBUG

session.expirationTime=8h
same.user.simultaneous.login=true

locale=en_us

fingerprint.useSDK=true
useLatentExtrator.fingerprint=true
useLatentExtrator.palmprint=false

image.convert.useJnbis=false

poolingSearch.active=true
poolingSearch.time=5

poolingUL.active=true
poolingUL.time=300

extratorServer.firstPort=8100
extratorServer.processNumber=4

faceQuality.qtdeMinErrors=2

session.expirationTime=8h

server.standalone.port=8085

best.ip=127.0.0.1
best.port=8123
best.protocol=http

# Path to save the videos (the face detection and extraction service needs to access this path)
fileDir=/var/lib/apache-tomcat-best/videos

# Endpoint for face detection/extraction service
detect.group.url=http://172.16.0.70:8127/v1/detection/

# Number of best faces desired for each identify (at least 1)
detect.numberBestFaces=5

# Number of threads (BEST server will import and search the faces in parallel)
identity.threadSize=4

# Frame detection step. If 3, only 1 out of 3 frames will be considered
detect.framesStep=3

# Faces must appear in at least this number of frames to be considered valid
detect.framesAppearingFilter=30

# Facelib match threshold
detect.matchThreshold=65