Quando se utiliza a interface PO-UI entre o Smartclient e o Application Server, tanto os application servers quanto o broker e os smartclients devem estar especificamente configurados para este cenário.
O exemplo de configuração abaixo é válido para application servers na versão 20.3.0.4 ou superior, e smartclient na versão 20.3.0.2 ou superior.
Exemplo de configuração no application server (ip: 197.165.43.10)
[GENERAL]
...
...
; obrigatório: por esta chave é que o ERP saberá que deve ser utilizada a interface PO-UI
APP_ENVIRONMENT=nome_environment
...
...
; a configuração padrão de comunicação é "porta multi protocolo encriptada"
; para documentação sobre "porta multi protocolo" consultar a página Application Server - Porta Multiprotocolo
[DRIVERS]
ACTIVE=TCP
; nesta configuração, a porta TCP 12341 será a "porta multi protocolo" utilizada pelo application server
[TCP]
TYPE=TCPIP
PORT=12341
...
...
[SSLConfigure]
...
...
CertificateServer=nome_certificado.pem
KeyServer=nome_chave.pem
...
...
Exemplo de configuração no broker (ip: 197.165.43.10)
No broker utilizamos a configuração padrão:
[BALANCE_SMART_CLIENT_DESKTOP]
; porta que vai ser usada no smartclient.ini
LOCAL_SERVER_PORT = 12340
; notar que nos remote servers deve ser usada a "porta multi protocolo" de cada application server
REMOTE_SERVER_01 = 197.165.43.11 12341
REMOTE_SERVER_02 = 197.165.43.12 12342
REMOTE_SERVER_03 = 197.165.43.13 12343
REMOTE_SERVER_04 = 197.165.43.14 12344
Exemplo de configuração no smartclient
No smartclient utilizamos a configuração padrão para uso com broker:
[conexao-broker-12340]
brokerproxy = 1
port = 12340
server = 197.165.43.10
Na chamada do smartclient passamos a configuração apontando para o broker, e usando o mesmo nome environment utilizado na chave APP_ENVIRONMENT do application server.
Configuração de certificados no application server
Neste exemplo estamos supondo que o smartclient e os application servers ficam em máquinas diferentes, cada uma com seu próprio IP ou nome DNS.
Neste caso, o certificado de cada application server deve contemplar tanto o ip/nome do application server quanto o ip/nome do broker.
Caso seja utilizada a ferramente padrão da Totvs para geração de certificados do application server, a linha de comando de geração de cada certificado será mais ou menos assim:
para application server 1: totvs_certificates -cert=cert_appserver1.pem -key key_appserver1.pem -host 197.165.43.11 -host 197.165.43.10
para application server 2: totvs_certificates -cert=cert_appserver2.pem -key key_appserver2.pem -host 197.165.43.12 -host 197.165.43.10
para application server 3: totvs_certificates -cert=cert_appserver3.pem -key key_appserver3.pem -host 197.165.43.13 -host 197.165.43.10
para application server 4: totvs_certificates -cert=cert_appserver4.pem -key key_appserver4.pem -host 197.165.43.14 -host 197.165.43.10
Notar que cada certificado contempla tanto o ip do próprio application server quanto o ip do broker.
Estes certificados devem ser configurados na seção SSLConfigure de cada application server.
A conexão do broker com o server não precisa de certificados válidos (podem ser até certificados self-signed), mas as conexões do Smartclient que passam pelo broker precisam de certificados válidos quando se utiliza a interface PO-UI.
Como o broker não valida as conexões SSL recebidas dos smaclientes, essas conexões devem ser validadas no application server.
Como a conexão do smartclient apontou para o ip do broker, então os certificados em cada server devem também conter o ip/nome da maquina onde está o broker.
Para detalhes da criação de certificados para o appserver utilizado a ferramenta da Totvs consultar a página Porta Multiprotocolo - Geração de Certificado.
Instalação do certificado autorizador nos smartclients
A interface PO-UI utiliza uma instância do navegador Chrome embutida no Smartclient. O navegador é bem exigente em matéria de verificação de certificados de segurança.
Quando o smartclient é instalado em uma cliente, o certificado autorizador da Totvs é automaticamente instalado na estação, portanto nenhum procedimento adicional é necessário.
Caso seja preciso instalar manualmente o certificado autorizador na estação cliente consultar a página Porta Multiprotocolo - Instalação de Certificado.
Utilização de certificados emitidos por entidade certificadora que não a Totvs
Neste caso é responsabilidade do cliente a obtenção/geração/instalação dos certificados necessários, O importante é que no certificado do application server deve também constar o nome/ip do broker.
Configuração quando o broker e os application servers estão na mesma máquina (mesmo ip/nome)
Neste caso os certificados irão conter apenas o ip/nome da máquina única utilizada, e todos os application servers irão utilizar os mesmos certificados.
Também no broker as chaves REMOTE_SERVER_NN poderão conter localhost ou 127.0.0.1 na configuração de nome/ip dos application servers.
Utilização interface PO-UI em conexão não encriptada
Neste caso não é necessário nada de especial na configuração, a não ser que o smartclient deve apontar para o broker, o broker apontar para a porta multi protocolo dos application servers, a chave APP_ENVIRONMENT deve estar configurada para o environment correto, e o smartclient deve utilizar o environment configurado na chave APP_ENVIRONMENT.
---/---