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 a <carpeta de tomcat>/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

Not translated

This section is not translated as it does not contain any technical content.

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=http://<ip>
best.port=<port>

Important

También es posible utilizar https en la configuración de best.ip.

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

# Conexión GBDS 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=
best.port=

# Ruta para guardar los videos (el servicio de detección y extracción de rostros necesita acceder a esta ruta) fileDir=/var/lib/apache-tomcat-best/videos

# Endpoint para el servicio de detección/extracción de rostros detect.group.url=http://172.16.0.70:8127/v1/detection/

# Número de mejores rostros deseados para cada identificación (al menos 1) detect.numberBestFaces=5

# Número de hilos (el servidor BEST importará y buscará los rostros en paralelo) identity.threadSize=4

# Paso de detección de fotogramas. Si es 3, solo se considerará 1 de cada 3 fotogramas detect.framesStep=3

# Los rostros deben aparecer en al menos este número de fotogramas para considerarse válidos detect.framesAppearingFilter=30

# Umbral de coincidencia de facelib detect.matchThreshold=65