O servidor OPC UA embutido

O servidor OPC UA que a estação roda dentro do processo: o que ele publica, as quatro linhas de Configurações que o observam, o configuram e o guardam, o que ele compartilha com a área de notificação e a barra de status, e o que um navegador remoto não pode fazer.

Ver como Markdown

A estação é um servidor OPC UA. Ele roda dentro do processo do aplicativo, inicia com ele, continua servindo enquanto a janela está escondida na área de notificação, e publica os dispositivos do Connector e as tags deles em opc.tcp://<nome do computador>:4840/UA/GanterLab (com localhost como alternativa na mesma máquina). Um cliente OPC UA na rede lê as tags ali e pode escrever nas que aceitam escrita; uma escrita cruza o mesmo funil de escrita da Logic que qualquer outra, então as travas de origem e as recusas do runtime valem para ela. O mesmo hospedeiro carrega a comunicação com os dispositivos: parar o servidor para os drivers junto.

Quatro linhas do índice esquerdo de Configurações pertencem a ele: Estado, Configuração e Acesso de clientes sob SERVIDOR OPC UA, e Acesso de equipamentos sob EQUIPAMENTO OPC UA. Abrir a página exige a permissão Alterar configurações.

Nesta área

Página O que ela cobre
Estado O painel de instrumento: a lâmpada e o texto de estado, o endpoint, o Iniciar, o Parar, o Reiniciar e o Testar conexão, e os seis medidores (Tempo ativo, Sessões, Dispositivos, Drivers, Erros, Avisos).
Configuração O nome do aplicativo, a porta de escuta, a autenticação de cliente (Desabilitada, Anônima, Usuário e senha), o usuário e a senha, o Aplicar e reiniciar, e por que os campos só são editáveis com o servidor parado.
Acesso de clientes Os certificados dos aplicativos que discam para esta estação: o Adicionar cliente e a conferência de identidade dele, a lista de pendentes e o teto dela, os Endereços de conexão, a linha do Firewall do Windows, os Conectados agora, os Clientes confiáveis com o Importar certificado, os Clientes bloqueados.
Acesso de equipamentos Os certificados dos equipamentos OPC UA para os quais o Connector disca: o Esperando aprovação, os Equipamentos aprovados com o Importar certificado, o Retirar a aprovação, os Equipamentos bloqueados, e o que um dispositivo à espera diz no Connector.

Dois portões, mantidos separados

Uma sessão OPC UA passa por duas conferências que esta área configura em separado. A confiança no certificado decide se um aplicativo pode alcançar o servidor: um certificado desconhecido é recusado na primeira tentativa e guardado para a sua revisão, nada é confiado automaticamente, e a impressão digital, nunca o nome que um certificado declara, é a identidade a verificar. A autenticação de cliente decide então como um aplicativo confiável entra: de jeito nenhum (Desabilitada, o padrão, que recusa toda sessão), de forma anônima, ou com o único usuário e senha configurados. A mesma ideia aponta para o outro lado no Acesso de equipamentos: a estação não lê nada de um equipamento OPC UA cujo certificado você não aprovou.

O que é compartilhado com a área de notificação e a barra de status

O estado ao vivo do servidor é uma verdade só, lida por várias superfícies. A lâmpada e o texto de estado no Estado, o ponto de saúde no ícone da área de notificação e a dica dele ("Ganter Lab: Conectado"), a linha "Servidor: Conectado" do menu da área de notificação, e o ponto de saúde da barra de status leem todos o mesmo monitor; a barra de status nomeia o servidor ("Servidor: iniciando…", "Servidor: parado") sempre que ele não está conectado, e no resto do tempo relata o pior dispositivo. O sinalizador de execução, a hora de início, o tempo ativo e a contagem de sessões também são pontos do espaço de endereços da Logic, sob a raiz Server dela (Running, StartTime, Uptime, SessionCount), então um dashboard ou uma expressão pode lê-los.

Todo desfecho de um comando daqui aparece no feed de ações da barra de status, e toda recusa e toda decisão sobre um certificado é registrada no diário: as linhas de log do próprio servidor estão na aba Console dos Eventos, e as contagens de erro e de aviso delas são os dois últimos medidores do painel de instrumento.

As duas travas

O Iniciar, o Parar, o Reiniciar, o Aplicar e reiniciar, todo campo da Configuração e toda decisão sobre certificado são trabalho de engenharia. Enquanto uma unidade está em execução eles ficam esmaecidos com "A configuração fica travada enquanto uma unidade está em execução.": parar o servidor da planta é trabalho de configuração, não de operação. Enquanto o runtime está parado eles ficam esmaecidos também, e um toque que passe é recusado com "Runtime parado". O Testar conexão, os medidores, os endereços e as relações continuam legíveis pelas duas travas.

O que um navegador remoto não pode fazer

Um navegador em outro dispositivo com um papel que carrega Alterar configurações vê estas quatro linhas exatamente como a janela da estação vê, e pode iniciar, parar e reiniciar o servidor e aplicar uma configuração. O que ele não pode fazer é decidir sobre certificados: o Adicionar cliente, o Confiar, o Bloquear, o Revogar, o Desbloquear, o Descartar todos, o Importar certificado, o Aprovar, o Retirar a aprovação e o botão do Firewall do Windows são recusados ali com "O acesso de clientes só pode ser mudado no aplicativo instalado na estação." (ou o equivalente de equipamentos), e um aviso informativo em cada cartão diz isso: "Abra o aplicativo da estação para mudar o acesso de clientes." O link do medidor de Avisos para a janela destacada de Eventos fica esmaecido com "Disponível apenas no aplicativo instalado na estação.".

Onde os certificados moram: o certificado de aplicativo do próprio servidor e os repositórios de certificados de cliente confiáveis, pendentes e bloqueados ficam sob ua\pki na raiz de dados da estação, e os repositórios de equipamento sob ua\pki\southbound. Eles sobrevivem a reinícios e não fazem parte de um backup de configuração.