1. Introdução¶
Esse manual descreve a configuração dos componentes do lado do servidor do GBS BEST Server.
O procedimento de configuração deve ser feito somente depois do passo de instalação. Para mais informações, consulte o Manual de Instalação do GBS Apps.
2. Configuração¶
Os passos de configuração são:
- Configure o Tomcat;
- Configure os Certificados;
- Gere a senha criptografada;
- Finalize as configurações no arquivo config.properties.
Todos os passos são descritos abaixo. Um exemplo do arquivo config.properties
pode ser visto na seção Exemplo do Arquivo de Configuração.
Danger
Todas as linhas devem estar presentes no arquivo de configuração. Comentar ou deletar linhas pode causar comportamentos inesperados. Para informações adicionais, contate o Time de Suporte da Griaule.
2.1. Configuração do Tomcat¶
Edite o arquivo de configuração do Tomcat para configurar os certificados e a porta que a aplicação usará.
vi /var/lib/tomcats/best/conf/server.xml
Para mudar a porta, procure por connector port=
. Essa é a porta para operações backend.
2.2. Configuração de Certificados¶
Para habilitar autenticação SSL, procure por connector port=
no arquivo /conf/server.xml
.
Existem duas entradas. A comentada é a configuração para SSL. Remova os delimitadores de comentários <!--
e -->
, então ajuste os seguintes parâmetros:
port="58194"
keystoreFile="/home/griaule/keystore"
keystorePass="password"
keyAlias="1"
clientAuth="true"
truststoreFile="/home/griaule/keystore"
truststorePass="password"
O parâmetro port
deve ser a porta de rede desejada para a aplicação.
Mude o caminho do keystoreFile
e o truststoreFile
para os valores apropriados. Faça o mesmo para o keystorePass
e o truststorePass
.
O parâmetro clientAuth="true"
irá requerer autenticação do servidor para o cliente e do cliente para o servidor. Isso significa que o cliente necessitará importar o certificado no navegador para poder acessar a aplicação.
Warning
Quando clientAuth é definida como true, o administrador do sistema deve fornecer o arquivo certificate.pfx para os usuários finais.
2.3. Criptografia da senha do Banco de Dados¶
No arquivo config.properties
, o parâmetro jdbc.password
é uma senha criptografada. Para gerar a senha criptografada, siga os seguintes passos:
Vá para o seguinte diretório:
cd /var/lib/tomcats/best/webapps/gbs-best-server/WEB-INF/lib
Execute o comando:
java -cp gbs-common-db-<versão>.jar com.griaule.commons.util.EncryptUtil <senhaDesejada>
A senha criptografada aparecerá depois da mensagem: “Encrypted password is:”
Note
Guarde a senha criptografada. Ela será usada em configurações posteriores.
2.4. Filtro de Busca por Rótulos¶
Algumas configurações BEST podem ser feitas através dos bancos de dados, como os dos rótulos para filtro de pesquisa. Essa configuração é uma lista de rótulos que o usuário pode selecionar na configuração de pesquisa de fragmentos para restringir a lista de candidatos.
Para configurar os rótulos desejados, você precisa incluir os rótulos na linha search.labels
na tabela sphinx.settings
. Observe que os rótulos devem ser separados por vírgula.
Esses rótulos ficarão visíveis para todos os usuários do BEST.
2.5. Arquivo de Configuração da Aplicação¶
Para configurar o arquivo, abra-o com:
vi /var/lib/tomcats/best/conf/config.properties
As mudanças mais importantes nesse arquivo são os parâmetros jdbc.url
, jdbc.username
, jdbc.password
e gbds.url
. Configure-os de acordo com seu ambiente.
O arquivo de configuração completa é mostrado na seção Exemplo do Arquivo de Configuração
Note
Lembre-se de substituir a senha criptografada gerada na seção Criptografia da senha do Banco de Dados neste arquivo.
2.5.1. Rótulo de Segregação de Caso¶
É possível segregar os casos que um usuário vê no software. Para fazer isso, você precisa adicionar uma permissão nas configurações do LDAP.
Dentro de um grupo de usuários no LDAP, adicione o rótulo no formato best_org_{rotulo}
, ex. best_org__MG
. Novos casos criados por usuários deste grupo terão este rótulo e o caso será visível apenas para usuários com as permissões corretas para visualizar casos com esse rótulo.
Note
Casos criados antes da adição dos rótulos não serão modificados.
2.5.2. Uso de vários nós¶
O BEST pode ser usado em mais de um nó de servidor. Para permitir isso, o servidor mestre deve ter a configuração poolingUL.active
definido como true
, e outros nós devem tê-la definido como false
.
Important
Lembre-se de definir um balanceamento de carga entre os nós se estiver usando este método.
2.5.3. Configurações do BEST¶
O último passo é configurar o IP e a porta da aplicação que o usuário final irá acessar. Ele deve ser o mesmo IP e porta configurado na seção Configuração do Tomcat.
best.ip=<ip>
best.port=<port>
best.protocol=<protocol>
Important
Certifique-se de que os parâmetros de configuração best.ip
, best.port
e best.protocol
estejam corretamente especificados no arquivo config.properties
. Em diversos casos, o IP será o mesmo para diversas aplicações. Contudo, cada aplicação possuirá uma porta diferente e única.
3. Finalizando as Configurações¶
Após completar todos os passos de configuração, volte para o Manual de Instalação do GBS Apps - Seção de Configuração.
4. Exemplo do Arquivo de Configuração¶
Essa seção mostra um exemplo do arquivo 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