5.50_v.1.03
Data de liberação para cliente piloto: 10/12/2021
Pontos de atenção
Tela de instalação
Removemos algumas opções, que não eram mais utilizada na instalação, sendo elas: (url/core/install)
(PLT-847):
A aba de configuração do “KPI”, pois o mesmo não é mais comercializado;
Na aba ECM,
o campo Endereço ECM-WEB, que refere-se a configuração do ECM Fragment, porém não é comercializado separadamente;
os campos do Módulo de captura, pois não é mais compatível com o sistema;
Log Executa SQL
Agora deve ser utilizado o EXECUTA_SQL_BPM
, invés do EXECUTA_SQL
, segue os passos para habilitá-lo quando precisar (não deve deixar ele ativo desnecessariamente) (PLT-1181):
1. Acessar [host]/bpm/system/
2. Acessar a opção “Configurações de log”
3. Alterar o registro de identificação EXECUTA_SQL_BPM
para ficar conforme abaixo:
Identificação: EXECUTA_SQL_BPM
Nome do Arquivo: EXECUTA_SQL_BPM.log
Max file size: 1024
Max backup index: 2
Level: DEBUG
Pacote/Classe: br.com.lecom.workflow.sql.executa,br.com.lecom.sqlexecutor.executor
O arquivo será gravado em: storage\bpm\logs_system\node-01
Navegador
Homologamos a nossa Plataforma com o Edge, pois o IE será descontinuado. Por isso em casos de erros que ocorram no IE, com a execução de Java Script e Regra de tela em especial, devem ser avaliados em outros navegadores. (e-PLT-850)
Updates
Ajustamos o Update 46, para que os dados dos campos repetição, sejam incluídos corretamente na tabela Processo_etapa_campo
, pois não estavam sendo exibidos todas as repetições nos processos migrados. (e-PLT-903)
Pontos de impacto
Consultores e Infraestrutura
Gerenciador do Pool de conexão
Atualizamos o gerenciador do pool de conexões do BPM de C3p0 para Hikari, por isso os parâmetros de configuração do arquivo “jdbc.properties
” que fica em [storage]/bpm/configuracoes
mudaram conforme o exemplo abaixo (PLT-1232 , PLT-1079 e PLT-814):
min_pool_size=1
max_pool_size=20
max_idle_time=60
E com isso as informações que são exibidas no bpm/system também atualizaram:
minConnections=1,
numConnections=0,
dataSourceName=BPM_<nome_do_datasource>,
maxConnections=20
Importante: É necessário avaliar todas as conexões com Banco de Dados externos e em casos do BD MS SQL Server, recriar os properties com o SCHEMA definido. Além disso os drivers anteriores utilizados para os BDs DB2, Lotus Notes, Informix, Progress e MS SQL Server 2008, não são compatíveis com o Hikari.
Headers de segurança (Tratamento de Vulnerabilidade)
As aplicações externas que estejam no contexto das aplicações de produto, não devem injetar mais os headers uma vez que o sistema estará injetando e poderá causar problema devido a duplicação.
Formulário Público
Foi alterado o contexto da URL para acessar de “form-app/process-instances/activity-forms
” para “form-web/
”, veja exemplo abaixo
De
https://<ambiente>/form-app/process-instances/activity-forms?processInstanceId=<nº processo>&activityInstanceId=<nº da instancia>&cycle=<nº do ciclo>&uuid=<UUID>&language=pt_BR&testMode=false&displayFormHeader=true&highContrast=false
Para
https://<ambiente>/form-web/?processInstanceId=<nº processo>&activityInstanceId=<nº da instancia>&cycle=<nº do ciclo>&uuid=<UUID>&language=pt_BR&testMode=false&displayFormHeader=true&highContrast=false
Implantação e Infraestrutura
Configuração SSL
Removemos da tela de instalação (url/core/install
), a aba SSL que fica em “Configurações avançadas “, pois as configurações foram centralizadas nas envs (exportadas no arquivo catalina.sh/bat
ou setenv.sh/bat
). (PLT-847)
Microserviço Form-WEB
Para este novo serviço, será utilizada a porta 3001, que será carregado através do Node (compatível com a versão 12 ou superior). (PLT-724)
E por isso criamos a variável de ambiente DOMAIN_FORM_WEB
, que deverá ser exportada no TOMCAT ( no arquivo catalina.sh
ou setenv.sh
), ela é necessária para visualizar o formulário dentro do módulo de Documentos, quando abrimos um novo processo a partir da consulta de um documento. (PLT-1128).
Segue exemplos :
Configuração sem Proxy (precisa configurar com o endereço e porta do form-web e esta porta deve ser liberada para acesso externo web);
DOMAIN_FORM_WEB=http://localhost:3001
Configuração com Proxy (precisa configurar com o endereço e nome do serviço)
DOMAIN_FORM_WEB=https://localhost/form-web
Além de mapear a variável no TOMCAT, precisa ser criado o mapeamento do contexto /form-web
para a porta 3001 no proxy reverso;
Obs.: A variável de ambiente DOMAIN_FORM_APP que fica nas configurações do TOMCAT (no arquivo catalina.sh ou setenv.sh), foi descontinuada e por isso deve ser removida.
Reestruturação dos MicroServiços de Front-end
No arquivo global.env utilizado para inicialização do Node ( que fica em /opt/lecom/app/microservices/node-web-server/config
), deverão ser definidas as seguintes variáveis:
NODE_ENV
HOST_NAME
NODE_EXTRA_CA_CERTS
NODE_KEY
SSL_ENABLED
NODE_TLS_REJECT_UNAUTHORIZED
SERVER_TIMEOUT
TZ
Além de todos os parâmetros que estão no item Headers de segurança
E no arquivo node-web-server.config.js (que fica em /opt/lecom/app/microservices/node-web-server/config
), deverão ser definidas as demais variáveis:
SERVICE_NAME
SERVER_PORT
CONTEXT_PATH
GATEWAY_URL
LECOM_BPM_URL
Tratamento de Vulnerabilidade
Headers de segurança
A configuração de header estão definida nos arquivos abaixo, porém para cada um deles, se faz necessário utilizar de formas distintas, ou seja:
Para os serviços em Node, utiliza o arquivo global.env
(/opt/lecom/app/microservicos/node-web-server/config/
) e neste arquivo já estão definido os parâmetros abaixo, caso seja necessário alterar os mesmos :
“X_Frame_Options”: “”,
“X_Content_Type_Options”: “nosniff”,
“X_XSS_Protection”: “1;mode=block”,
“Access_Control_Allow_Origin”: “”,
“Access_Control_Allow_Methods”: “*”,
“Access_Control_Allow_Headers”:”Content-Type,X-Requested-With,accept,Origin,Access-Control-Request-Method,Access-Control-Request-Headers,test-mode,ticket-sso,test-user,Cache-Control,form-uuid,language,pragma,application,Referer,sec-ch-ua,sec-ch-ua-mobile”,
“Access_Control_Expose_Headers”: “*”,
“Access_Control_Max_Age”: “86400”,
“Access_Control_Allow_Credentials”: “true”,
“Strict_Transport_Security”: “max-age=31536000;includeSubDomains”
Para o TOMCAT é utilizado o arquivo catalina.sh ou setenv.sh (/opt/lecom/app/tomcat_ambiente/bin/
), porém só serão exportadas as variáveis abaixo, caso seja necessário alterar o valor padrão da mesma.
Abaixo segue o formato e com o valor padrão assumido pela aplicação , quando não é exportada.
E para os Microserviços é utilizado o arquivo 00-profile.conf (/opt/lecom/app/microservices/envs/
), segue o mesmo padrão utilizado no Tomcat, que só é definido quando é diferente do padrão.
A variável Strict-Transport-Security , só será utilizada em ambientes com SSL. Quando definido max-age=31536000;includeSubDomains corresponde a ativo o modo seguro, caso contrário ficará desativado.
Configuração com Proxy
ACCESS_CONTROL_ALLOW_ORIGIN
,Não precisa declarar, exceto quando o cliente tiver outras aplicações em outros domínios que precisam acessar a Plataforma Lecom via navegador, ou seja, para o ambiente de desenvolvimento por se tratar da plataforma lecom não é necessário.X_FRAME_OPTIONS
Fica a critério do cliente ativar usando “sameorigin” caso todas as aplicações que vão injetar o frame esteja no mesmo dominio.
Configuração sem Proxy,
ACCESS_CONTROL_ALLOW_ORIGIN
precisa ser definida uma vez que os módulos estão rodando em contextos diferentes. Exemplo:ACCESS_CONTROL_ALLOW_ORIGIN ="http://localhost:3000,http://localhost:3001,http://localhost"
X_FRAME_OPTIONS
, não poderá ser definida, pois a mesma só pode ser utilizada quando temos um único domínio e porta para acesso da aplicação.
Autenticação entre módulo
Inicialmente precisa instalar o servidor OAuth conforme o manual, “Servidor OAuth – Instalação do serviço.docx”. E todos os ambientes, devem conseguir se comunicar com esse novo servidor, além disso é necessário liberar o acesso a url oauth.lecom.com.br. (PLT-829)
Os módulos, devem ser configurados com suas respectivas variáveis, conforme o manual “Servidor OAuth -- Configuração de novos ambientes.docx
” e seguir exatamente as nomenclaturas abaixo:
Para configuração dos Microserviços (alterar nos arquivos *.conf que fica em /opt/lecom/app/microservices/envs/ dos seus respectivos módulo
):
FORM_APP_OAUTH2_CLIENT_SECRET ( form-app )
FORM_SERVICE_OAUTH2_CLIENT_SECRET ( form-service)
SERVICE_INTEGRATION_OAUTH2_CLIENT_SECRET (service-integration)
OAUTH_SERVER_URL
Para configuração do TOMCAT ( arquivo catalina.sh ou setenv.sh que fica em /opt/lecom/app/tomcat_ambiente/bin/
):
ADMIN_OAUTH2_CLIENT_SECRET
BPM_OAUTH2_CLIENT_SECRET
CORE_OAUTH2_CLIENT_SECRET
ECM_OAUTH2_CLIENT_SECRET
SSO_OAUTH2_CLIENT_SECRET
SOCIAL_SERVICE_OAUTH2_CLIENT_SECRET
WORKSPACE_SERVICE_OAUTH2_CLIENT_SECRET
OAUTH_SERVER_URL
Atualizar as customizações que utilizam o método dispatcher, da classe br.com.atos.util.view.ControllerServelet
, para utilizar o método getRequestDispatcher
, da classe javax.servlet.http.HttpServletRequest
, pois quando utilizado em formulário público, aquele solicitava autenticação para acessar um arquivo. (AT-2940)
Termo de Consentimento
Para utilizar do Termo de Consentimento, precisa exportar a variável CONSENTTERM_ENABLED com valor true no arquivo setenv.sh ou catalina.sh (/opt/lecom/app/tomcat_ambiente/bin/
) . (PLT-900)
Variáveis
WORKSPACE_ACCESS_URL
, no arquivo catalina.sh
ou setenv.sh (/opt/lecom/app/tomcat_ambiente/bin/
) do TOMCAT, configurar sem a barra no final, pois caso contrário irá exibir “Página não encontrada” ao tentar acessar o ECM.PUBLIC_URL
, não será mais utilizada, mudou para CONTEXT_PATH
(PLT-724)WORKSPACE_URL
, não será mais utilizada, mudou para HOST_NAME
. (PLT-724)
SPRING_PROFILES_ACTIVE
, no arquivo env/00-profile.conf
dos Microserviços esta variável pode ser configurada como production ou acceptance e não deve ser usada como development, pois interfere no carregamento de processos. Porém nas configurações do TOMCAT pode ser utilizada como production , acceptance ou development que não irá interferir. (AT-2463)
As variáveis abaixo devem ser retiradas das configurações do TOMCAT (catalina.sh ou setenv.sh) e dos Microserviços (/envs/*.conf
):
BPM_SERVICE_URL
CORE_DOMAIN
GATEWAY_SERVICE_URL
SSO_DOMAIN
DOMAIN_FORM_APP:
Pasta
Em caso de implantação nova de ambiente precisa criar a seguinte pasta /opt/lecom/lecom/api
, caso contrário irá apresentar erro ao acesso o módulo Login. (AT-2484)