Você está na página 1de 28

SAGE

SISTEMA ABERTO DE GERENCIAMENTO DE ENERGIA

Complemento de Anexo de Configuração

ServCGI_OpcUA - Servidor de Autenticação WEB/OPCUA


Open Platform Communications Unified Architecture
SAGE_ManCfg_Anx21.1_Serv_CGI_OpcUA

Julho de 2021
Quadro de Revisão

Nº Data Descrição Versão


00 01/06/2020 Versão do serv_CGI_OpcUA => 1.09 Versão do SAGE => 28-7
01 09/07/2020 Versão do serv_CGI_OpcUA => 1.12 Versão do SAGE => 28-8
02 23/08/2020 Versão do serv_CGI_OpcUA => 1.14 Versão do SAGE => 28-8
03 20/07/2021 Versão do serv_CGI_OpcUA => 4.00 Versão do SAGE => 28-12
04 23/07/2020 Descrição da configuração do Grafana com Single-Sign-On SAGE 28-12

Preparado por:

21.941-911 • Av. Horácio de Macedo, 354 • Rio de Janeiro - RJ


Tel.: (021) 2598-6000 • Fax: (021) 2260-1340

A informação contida neste documento é de propriedade do CEPEL, tendo se originado de trabalho desenvolvido nesta empresa para consulta e
referência dos usuários do sistema SAGE, e não poderá ser reproduzida ou utilizada para quaisquer outros fins sem autorização prévia e
expressa do CEPEL. Este documento baseia-se em informação disponível na data de sua publicação. Embora sejam feitos esforços para
torná-lo preciso, este não se propõe a cobrir todos os detalhes ou particularidades apresentadas pelo sistema. O CEPEL não se responsabiliza
por notificar os usuários deste documento de possíveis alterações feitas posteriormente.
ii
Conteúdo
21 - 1 SERVIDOR DE AUTENTICAÇÃO WEB SERVCGI_OPCUA ............................. 1
21.1 AUTENTICAÇÃO DE APLICAÇÕES WEB INTEGRADAS AO SAGE ................................................... 1
21.2 INSTALAÇÃO DO SERVIDOR DE AUTENTICAÇÃO WEB/OPCUA ................................................... 4
21.3 INSTALAÇÃO DO CERTIFICADO PESSOAL NO BROWSER .............................................................. 6
21.3.1 Browser Firefox ............................................................................................................. 6
21.3.2 Browser Chrome ......................................................................................................... 12
21.3.3 Browser Edge .............................................................................................................. 17
21.4 PÁGINAS WEB DE SERVIÇOS, CONFIGURAÇÕES E TESTES....................................................... 19
21.5 INSTALAÇÃO DO GRAFANA E SINGLE-SIGN-ON COM O SAGE ................................................... 21
21.6 ADICIONANDO AO SISTEMA UMA NOVA APLICAÇÃO WEB .......................................................... 22
21.7 CONFIGURANDO A EXECUÇÃO DE POSTS E RESTS AUTORIZADOS .......................................... 23

i
CONTEÚDO

ii
Capítulo

21
21 - 1 Servidor de Autenticação WEB
ServCGI_OpcUA

21.1 Autenticação de Aplicações WEB Integradas ao


SAGE
A figura 1 mostra o Servidor FastCGI_OpcUA, integrado aos outros elementos componentes do
SAGE OPCUA (em vermelho), exercendo a sua função básica de autenticar o acesso de
aplicações WEB executadas a partir de Browsers, tais como Chrome, Firefox ou Edge (em verde),
que estarão sendo servidas por Aplicações Externas ou Internas ao SAGE (em cinza), através de
um Servidor WEB Nginx (em laranja).

figura 1

1
21 - - 1 SERVIDOR DE AUTENTICAÇÃO WEB SERVCGI_OPCUA

Um dos produtos finais da atuação do Servidor FastCGI_OpcUA é o fornecimento de tokens JWT


(JSON Web Token), na forma de Cookies, aos Browsers que estarão interagindo com o SAGE
via HTTPS através de páginas WEB sendo executadas nesses Browsers e servidas pelos
Servidores de Aplicações, ambos residentes internamente no SAGE ou em qualquer localidade
da “Nuvem” (Internet).

A sequência de ações e resultados é a seguinte:

✓ o usuário do Browser em que foi importado um Certificado Digital Pessoal,


cadastrado pelo administrador de usuários e certificados (Adm_Certificados em
vermelho na figura 1) e associado a um usuário do SAGE, efetua um acesso ao
Portal do SAGE em https://endereço-IP-portal-sage

✓ o Servidor WEB Nginx e o Servidor FastCGI OpcUA do SAGE autenticam o usuário


no acesso Legado do SAGE ou junto ao Servidor PAM/AD corporativo da empresa,
fornecendo ao Browser um token JWT com a identificação do usuáriom o tipo de
acesso feito (Legado ou PAM/AD), que é gravado como Cookie no Browser e
associado ao site do SAGE

✓ a partir daí, todos os acessos feito por páginas do Browser endereçadas a


https://endereço-IP-portal-sage/aplicação-sage serão tratados pelo servidor da
Aplicação SAGE, ativo em qualquer máquina do SAGE ou qualquer máquina externa
ao SAGE que possua acesso OPCUA ao SAGE

✓ no primeiro acesso, o servidor da Aplicação SAGE deverá estabelecer uma sessão


OPCUA com o servidor SageOpcUA, sessão esta associada ao usuário registrado no
token JWT, usando o token na modalidade IssuedWS-Security Token, ou como
password na modalidade UserNameIdentity Token

✓ nos acessos subsequentes, o servidor da Aplicação SAGE deverá verificar em cada


acesso do Browser a autenticidade e prazo de validade do token, usando o Método
OPCUA “Valida WEB Token de Autenticação” ...

✓ ... mas periodicamente, caso o usuário em um período de 1 minuto não tenho feito
nenhum acesso com o Browser, o servidor da Aplicação SAGE deverá obter um
token recente usando o Método OPCUA “Obtém WEB Token de Autenticação”,
para que uma eventual perda da conexão com o servidor SageOpcUA possa ser
automaticamente reiniciada de forma transparente para o usuário do Browser.

Todos os recursos de segurança para fornecimento dos JWT e acesso WEB dos Browsers são
baseados em chaves privadas e certificados digitias pessoais, comuns aos 3 servidores do SAGE
identificados na figura (Nginx, SageOpcUA e FastCGI_OpcUA), e que são gerenciados pelo
Adm_Certificados - Administrador de Usuários e Certificados do SAGE. O formato do JWT já
descriptografado e decodificado é mostrado na figura 2 a seguir com os seguintes significados
para os campos do “Payload”.
name: Nome do usuário SAGE no acesso Legado ou no acesso PAM/AD
iat: Data-hora do fornecimento do token
exp: Data-hora da expiração do token
tipo: “L” se autenticação no acesso Legado ou “P” no acesso PAM/AD

figura 2
2
21 - - 1 SERVIDOR DE AUTENTICAÇÃO WEB SERVCGI_OPCUA

O JWT fornecido ao Browser, e utilizado pelos Servidores de Aplicações para autenticarem os


seus usuários no SAGE OPCUA, é regulado conforme o item 7.36.1 mostrado na figura 3,
extraída do documento OPC UA Part 4 - Services Specification, e que faz parte da IEC 62541.

figura 3

A figura 4 mostra o aplicativo Desktop SageOpcUaBrowser simulando a execução de um método


pelo Servidor de Aplicação WEB que estará acessando o SAGE. O método demonstrado no
SageOpcUaBrowser faz a verificação da validade de um token JWT obtido pelo Browser quando
o usuário efetuou a sua autenticação no Portal do SAGE.

figura 4

E na figura 5, é mostrada a obtenção de um novo JWT válido por mais 10 minutos (600
segundos) para uma eventual necessidade do Servidor de Aplicação WEB ter que se reconectar
ao servidor SageOpcUA.

3
21 - - 1 SERVIDOR DE AUTENTICAÇÃO WEB SERVCGI_OPCUA

figura 5
.

21.2 Instalação do Servidor de Autenticação WEB/OPCUA


A instalação do Servidor FastCGI_OpcUA é feita no diretório $SAGE/drivers através do comando
super-usuário “instala_serv_cgi_OpcUA”. Antes de ativar esse procedimento, as pré-condições
de execução mostradas na figura 6.1 devem ser observadas, e se necessário, as chaves e
certificados requeridos deverão ser criados com o Adm_Certificados.

figura 6.1

Após ativar esse procedimento de instalação, o usuário é perguntado sobre as opções de


instalação e faz as suas escolhas. As opções de instalação são:
✓ Definição de servidor e conta de e-mail (Relay) a ser usado para envio aos usuários dos
e-mails de recuperação de senha;
✓ Atualização dos arquivos HTML utilizados pelo servidor;
✓ Atualização de scripts de testes;
✓ Atualização dos scripts de exemplo do Painel WEB;
✓ Atualização dos arquivos de configuração do Nginx
✓ Renicialização do Servidor Nginx e do Servidor FastCGI_OpcUA

4
21 - - 1 SERVIDOR DE AUTENTICAÇÃO WEB SERVCGI_OPCUA

A figura 6.2 mostra esse procedimento de instalação.

figura 6.2

Após a instalação e ativação do servidor, o usuário poderá customizar algumas das páginas
HTLM deste serviço de autenticação residentes no diretório /var/sage/serv_cgi, que possuem
uma cópia original com a extensão “.original”. São elas:
✓ indice_geral.html, onde o usuário pode incluir e retirar chamadas para as aplicações WEB
que o portal disponibilizará;
✓ sage_index.png, contendo a foto de abertura do portal, que pode ser customizada com o
programa Power-Point da Micrsoft editando o arquivo sage_index.pptx;
✓ serv_cgi_OpcUA.html, que permite configirar qual página, diferente do indice_geral.html,
será chamada ao se clicar no botão “Indice Geral”.

5
21 - - 1 SERVIDOR DE AUTENTICAÇÃO WEB SERVCGI_OPCUA

21.3 Instalação do Certificado Pessoal no Browser


Para fazer o acesso WEB seguro ao site SAGE, a partir de um Browser Firefox, Chrome ou Edge,
o usuário deverá importar no seu Browser o certificado pessoal PFX gerado pelo
Adm_Certificados, enviado à ele por e-mail pelo administrador do SAGE.

Sem esse certificado, não será possível acesso ao sistema e a página exibida pelo Browser
conterá a mensagem: "Error 400 - Bad request - No required SSL certificate was sent" conforme
mostra a figura 7.1.

figura 7.1

O usuário deverá importar o certificado pessoal no(s) seu(s) Browser(s) conforme descrito a seguir
nos itens 21.3.1 a 21.3.3 para os Browsers Firefox, Chrome e Edge, respectivamente.

21.3.1 Browser Firefox

Para instalar o certificado de usuário no Firefox, deve-se clicar no botão do topo direito deste
Browser e escolher a alternativa “Opções” conforme as setas em vermelho da figura 7.2.

figura 7.2

6
21 - - 1 SERVIDOR DE AUTENTICAÇÃO WEB SERVCGI_OPCUA

Será apresentada a página de “Opções”, onde deverá ser escolhida a opção “Privacidade e
Segurança” conforme mostra a figura 7.3.

figura 7.3

Usando a barra de rolagem para ir até o final da lista, deve-se escolher a opção "Ver certificados"
conforme mostra a figura 7.4.

figura 7.4

Como mostra a figura 7.5, será apresentada uma a página com várias abas, onde a aba “Seus
certificados” deve ser selecionada seguindo-se do click no botão “Importar”.

7
21 - - 1 SERVIDOR DE AUTENTICAÇÃO WEB SERVCGI_OPCUA

Após o click será exibido o pop-up “Importar Arquivo de Certificado”, onde o usuário deverá
navegar até o diretório onde reside o arquivo certificado de extensão PFX recebido do
administrador. Nesse passo é preciso ter atenção com a seleção mostrada no canto inferior direito
deste pop-up, para que esteja habilitada a exibição de arquivos com a extensão *.pfx, o que
possibilitará a localização do arquivo com o certificado para a escolha através de uma das duas
setas roxas, “Abrir” (click) ou a que aponta para o arquivo do certificado (duplo-click).

Quando o certificado for selecionado será exibido um segundo pop-up “Requer senha”, cujo
campo de texto deverá ser ignorado, sem a digitação de texto no mesmo, e fazendo apenas a
confirmação final no botão “OK”.

figura 7.5

O Firefox confirmará a importação com sucesso do certificado conforme mostrado na figura 7.6.

figura 7.6

8
21 - - 1 SERVIDOR DE AUTENTICAÇÃO WEB SERVCGI_OPCUA

Após a importação do certificado do usuário, o acesso ao site poderá ser feito e, unicamente no
primeiro acesso, poderá ser exibida a página apresentada na figura 7.7 sinalizando que o acesso
é considerado inseguro, caso o certificado utilizado pelos módulos servidores do site do
SAGE, servidor da comunicação com o Browser cliente, seja o certificado “auto assinado” gerado
pelo próprio SAGE, ou seja, não tenha sido emitido por uma entidade certificadora oficial.

Se o certificado utilizado pelos servidores do SAGE foi obtido de uma entidade certificadora
pública oficial (por exemplo CertSign, GoDaddy, etc..) esta página não será exibida. Portanto, o
administrador do site deverá decidir se usará o certificado auto-assinado gerado pelo SAGE, ou
contratará uma entidade certificadora oficial para fornecer esse certificado.

figura 7.7

Caso esta página da figura 7.7 seja exibida, ignorar o aviso e prosseguir com o acesso, o que
implicará no auto cadastramento do site no Browser como "exceção de segurança", fazendo com
que a página não seja mais exibida ao acessar o site. Para isso, deve-se clicar nos botões
“Avançado” e “Aceitar o Risco e Continuar”.

A partir desse ponto, sempre que o Browser for iniciado e for feito o primeiro acesso ao site, será
apresentada a página de Login do site, conforme mostrado na figura 7.8, com um pop-up exibindo
as informações de certificado do usuário, o que garante ao usuário estar acessando um site onde
ele foi cadastrado com segurança.

Nessa página de Login o usuário informará a sua identificação e a sua senha no Acesso Legado
do SAGE ou no Servidor AD Corporativo da empresa, de acordo com a classificação do usuário
que está acessando o site.

Tendo sido autenticado no sistema, o usuário é informado do tipo de autenticação que foi
completada (acesso Legado ou acesso PAM/AD) e poderá clicar no botão “Menu Inicial” mostrado
na figura 7.9, que listará então as aplicações WEB disponíveis para serem acessadas no sistema,
como por exemplo as aplicações da lista que é mostrada na figura 7.10.

Para exploração da Base de Dados Histórica do SAGE, o usuário poderá utilizar os Dashboards
do Grafana de acordo com as suas autorizações associadas pelo Single-Sign-On do Portal do
SAGE, conforme assinalado na figura 7.11, e descrito no item 21.4.
9
21 - - 1 SERVIDOR DE AUTENTICAÇÃO WEB SERVCGI_OPCUA

figura 7.8

figura 7.9
10
21 - - 1 SERVIDOR DE AUTENTICAÇÃO WEB SERVCGI_OPCUA

figura 7.10

figura 7.11
11
21 - - 1 SERVIDOR DE AUTENTICAÇÃO WEB SERVCGI_OPCUA

21.3.2 Browser Chrome

Para instalar o certificado de usuário no Chrome, deve-se clicar no botão do topo direito deste
Browser e escolher a alternativa “Configurações” conforme as setas em vermelho da figura 7.12.

figura 7.12

Será apresentada a página de “Configurações”, onde deverá ser escolhida a opção “Privacidade e
Segurança” conforme mostra a figura 7.13.

figura 7.13

12
21 - - 1 SERVIDOR DE AUTENTICAÇÃO WEB SERVCGI_OPCUA

Será apresentada a página de “Privacidade e Segurança”, onde deverá ser escolhida a opção
“Segurança” conforme mostra a figura 7.14.

figura 7.14

Será então apresentada a página de “Segurança”, onde deverá ser usada a barra de rolagem
deslocando-se até o final da página onde deverá ser selecionada a opção “Gerenciar
Certificados”, conforme mostra a figura 7.15.

figura 7.15

13
21 - - 1 SERVIDOR DE AUTENTICAÇÃO WEB SERVCGI_OPCUA

Será apresentada uma janela pop-up onde deve ser feito um click no botão “Importar” que exibirá
uma segunda janela pop-up para o “Assistente para Importação de Certificados”. Iniciar esse
assistente clicando-se em “Avançar”, conforme mostra a figura 7.16.

figura 7.16

No pop-up do assistente será exibida a janela onde o usuário deverá clicar no botão “Procurar”
para localizar e selecionar o arquivo do seu certificado, conforme mostrado na figura 7.17. Nesse
passo é preciso ter atenção com a seleção mostrada no canto inferior direito do pop-up, para que
esteja habilitada a exibição de arquivos de “Troca de Informações Pessoais” com a extensão
*.pfx, o que possibilitará a localização do arquivo com o certificado para a escolha através de uma
das duas setas roxas, “Abrir” (click) ou a que aponta para o arquivo do certificado (duplo-click).

figura 7.17

14
21 - - 1 SERVIDOR DE AUTENTICAÇÃO WEB SERVCGI_OPCUA

Com o arquivo escolhido exibido na caixa de texto do pop-up desse assistente, clicar no botão
“Avançar” conforme mostrado na figura 7.18.

figura 7.18

Será apresentada no pop-up uma opção para “Proteção de Chave Privada”, cujo campo de texto
deverá ser ignorado, sem a digitação de texto no mesmo, clicando novamente em “Avançar”,
conforme mostrado na figura 7.19.

figura 7.19

15
21 - - 1 SERVIDOR DE AUTENTICAÇÃO WEB SERVCGI_OPCUA

Confirmar que o certificado fará parte da aba “Pessoal” e clicar em “Avançar”, conforme mostrado
na figura 7.20.

figura 7.20

Concluir a importação clicando no botão “Concluir” e verificando que a importação foi concluída
com êxito, conforme mostrado na figura 7.21.

figura 7.21

16
21 - - 1 SERVIDOR DE AUTENTICAÇÃO WEB SERVCGI_OPCUA

Após a importação do certificado do usuário, o acesso ao site poderá ser feito e, unicamente no
primeiro acesso, poderá ser exibida uma página do Chrome equivalente à página apresentada na
figura 7.7 para o Firefox, sinalizando que o acesso é considerado inseguro, caso o certificado
utilizado pelos módulos servidores do site do SAGE, servidor da comunicação com o Browser
cliente, seja o certificado “auto assinado” gerado pelo próprio SAGE, ou seja, não tenha sido
emitido por uma entidade certificadora oficial.

Se o certificado utilizado pelos servidores do SAGE foi obtido de uma entidade certificadora
pública oficial (por exemplo CertSign, GoDaddy, etc..) a página equivalente à apresentada na
figura 7.7 não será exibida. Portanto, o administrador do site deverá decidir se usará o certificado
auto-assinado gerado pelo SAGE, ou contratará uma entidade certificadora oficial para fornecer
esse certificado.

Caso a página equivalente à apresentada na figura 7.7 seja exibida, ignorar o aviso e prosseguir
com o acesso, o que implicará no auto cadastramento do site no Browser como "exceção de
segurança", fazendo com que a página não seja mais exibida ao acessar o site. Para isso, deve-
se clicar nos botões “Avançado” e “Ir para https://<site-do-sage>”.

A partir desse ponto, sempre que o Browser for iniciado e for feito o primeiro acesso ao site, será
apresentada a página de Login do site, conforme mostrado na figura 7.8 usando o Firefox, com
um pop-up exibindo as informações de certificado do usuário, o que garante a ele estar
acessando um site onde ele foi cadastrado com segurança.

Nessa página de Login o usuário informará a sua identificação e a sua senha no Acesso Legado
do SAGE ou no Servidor AD Corporativo da empresa, de acordo com a classificação do usuário
que está acessando o site. Tendo sido autenticado no sistema, o usuário poderá clicar no botão
“Menu Inicial”, que listará então as aplicações WEB disponíveis para serem acessadas no
sistema, como por exemplo as aplicações da lista que é mostrada na figura 7.9.

21.3.3 Browser Edge

Para instalar o certificado de usuário no Edge, deve-se clicar no botão do topo direito deste
Browser e escolher a alternativa “Configurações” conforme as setas em vermelho da figura 7.22.

figura 7.22

17
21 - - 1 SERVIDOR DE AUTENTICAÇÃO WEB SERVCGI_OPCUA

Será apresentada a página de “Configurações”, onde deverá ser escolhida a opção “Privacidade,
Pesquisa e Serviços” conforme mostra a figura 7.23.

figura 7.23

Será apresentada a página de “Privacidade”, onde deverá ser usada a barra de rolagem
deslocando-se até o ponto da página onde deverá ser selecionada a opção “Gerenciar
Certificados”, conforme mostra a figura 7.24

figura 7.24

18
21 - - 1 SERVIDOR DE AUTENTICAÇÃO WEB SERVCGI_OPCUA

Será apresentado a mesma janela pop-up utilizada pelo Chrome e apresentada na figura 7.16
onde, assim como foi descrito no capítulo dedicado ao Chrome, deve ser feito um click no botão
“Importar” que exibirá uma segunda janela pop-up para o “Assistente para Importação de
Certificados.

Portanto, todos os procedimentos a seguir, a partir desse ponto, são os mesmos relatados para o
Chrome, a partir da figura 7.16 do capítulo anterior, até a conexão segura feita ao site.

21.4 Páginas WEB de Serviços, Configurações e Testes


Na figura 7.9, apresentada após a autenticação do usuário no sistema, o botão “Configurações”
exibirá a página mostrada na figura 8.1, contendo serviços de testes, consultas, ajustes de
configurações, incluindo troca senha, sendo que para a troca de senha o serviço funcionará
exclusivamente para o acesso Legado do SAGE.

figura 8.1

Na segunda seção desta página, o usuário poderá exibir seus Privilégios (acesso Legado), ou
Papéis (acesso PAM/AD), assim como escolher dentre as AORs (Legado) ou Papéis (PAM/AD)
que ele possui, com os quais ele deseja operar. As figuras 8.2, 8.3 e 8.4 mostram um exemplo
onde o usuário exibe os seus privilégios e escolhe as AORs com as quais deseja operar.

19
21 - - 1 SERVIDOR DE AUTENTICAÇÃO WEB SERVCGI_OPCUA

figura 8.2

figura 8.3

figura 8.4

Nas demais seções, são apresentados exemplos de acionamento de POSTs e execução de


serviços REST de aplicações WEB integradas ao SAGE, sendo que o próprio SAGE efetuará a
verificação dos privilégios do usuário para executar ou bloquear a execução dos serviços,
conforme os privilégios necessários associados aos serviços, configurados pelo gerenciador
Adm_Certificados. O item 21.7 descreve a configuração e execução desses serviços.

20
21 - - 1 SERVIDOR DE AUTENTICAÇÃO WEB SERVCGI_OPCUA

21.5 Instalação do Grafana e Single-Sign-On com o SAGE


O Grafana é uma plataforma de interface gráfica WEB que pode ser integrada para exploração de
dados na base histórica Postgres Time Series do SAGE, como um dos Data Sources com
acesso disponível no Grafana.

Para que os usuários do SAGE possam fazer um acesso seguro à base histórica Postgres Time
Series do SAGE, atrvés dos Dashboards do Grafana, ele deve ser configurado para integrar o
esquema de Single-Sign-On do SAGE provido pelo Servidor FastCGI_OpcUA.

O Grafana para Linux pode ser obtido em https://grafana.com/grafana/download, e após a sua


instalação será criado o diretório /etc/grafana com a configuração default do Grafana residindo no
arquivo grafana.ini deste diretório. Para preservação da sua versão original, sugere-se copiar
este arquivo neste mesmo diretório com o nome de grafana.ini.original.

Após a instalação do Servidor FastCGI_OpcUA descrita no item 21.2, ficam disponíveis no


diretório $SAGE/drivers os arquivos grafana.ini.sage e grafana.ini.sage_apenas_OAuth. Eles
devem ser copiados como owner=root e group=grafana para o diretório /etc/grafana.

A sequencia de ações para a integração do Grafana ao Single-Sign-On do SAGE é a seguinte:

✓ Efetuar o primeiro login no Grafana em http://endereço-IP-portal-sage:3000 como


usuário “admin”, e clicando em “Users” -> “New User” criar o usuário
“sage_grafana_admin”, dando a ele a mesma password de “root” do Linux e privilégios de
administrador no Grafana. Em seguida fazer logout do Grafana.

✓ Testar esse acesso de administrador fazendo o segundo login como usuário


“sage_grafana_admin”, e por questões de segurança, apagar o usuário “admin” (“delete
user”), mantendo apenas o usuário “sage_grafana_admin” como administrtador do
Grafana, efetuando em seguida logout do Grafana.

✓ Como super-usuário Linux no diretório /etc/grafana copiar o arquivo grafana.ini.sage para


grafana.ini, reiniciar o Grafana com o comando systemctl restart grafana-server, e fazer o
terceiro login, mas agora utilizando o endereço https://endereço-IP-portal-sage. Através
do Menu Inicial clicar no botão “Grafana - Dashboards” para acessar o Grafana como um
usuário do SAGE.

✓ Confirmar que o acesso foi feito como um usuário do SAGE posicionando o mouse sobre
o avatar no canto inferior esquerdo da página, fechando o Browser em seguida.

✓ Fazer o quarto login no Grafana, agora via https://endereço-IP-portal-sage/grafana,


utilizando o usuário “sage_grafana_admin”, para atribuir privilégios de administrador ao
usuário SAGE utilizado no terceiro login, confirmando na tela de gerencia de usuários do
Grafana que este usuário foi qualificado em vermelho como OAuth. Fazer logout em
seguida e fechar novamente o Browser.

✓ No diretório /etc/grafana copiar o arquivo grafana.ini.sage_apenas_OAuth sobre o


grafana.ini e reiniciar o Grafana com o comando systemctl restart grafana-server.

A partir deste último passo todos os acessos ao Grafana somente poderão ser feitos com
autenticação prévia no portal do SAGE em https://endereço-IP-portal-sage, e qualquer tentativa
de acesso direto ao Grafana, sem a passagem por esse portal, será negada pelo Grafana.

21
21 - - 1 SERVIDOR DE AUTENTICAÇÃO WEB SERVCGI_OPCUA

21.6 Adicionando ao Sistema uma Nova Aplicação WEB


No procediennto de instalação descrito no item 21.2 deste documento o usuário autoriza a
instalação de dois arquivos usados para referenciar as Aplicações WEB OPCUA do sistema.

O primeiro desses arquivos é o sageopcua_nginx.conf, instalado no diretório /etc/nginx/conf.d,


onde estão referenciadas as três aplicações que são acionadas a partir da página HTML exibida
na figura 7.10, e que pode ser customizada no segundo arquivo, indice_geral.html, instalado no
diretório $/var/sage/serv_cgi:
✓ SVG_Visbase – Telas do SAGE
✓ Grafana – Dashboards
✓ Visor de Alarmes WEB

Então, para adionar Aplicações WEB OPCUA ao sistema, o usuário deverá definir no arquivo
indice_geral.html a chamada da nova aplicação, e no arquivo sageopcua_nginx.conf o
endereço IP e porta TCP onde a aplicação reside (podendo ser “localhost”), além das locations da
mesma que serão roteadas pelo Servidor Nginx.

Uma location será usada para GET/REST + POST e, caso a aplicação use WebSockets, outra
para PUSH no WebSocket (ws), conforme mostrado no diagrama da figura 9 abaixo.

location /NovaAplic/ {
proxy_pass http://serv_aplic:7001/;
}
# para aceitar conexão websocket na aplicacao
# que devera ser configurada para wss://sageopcua.cepel.br/wst
location /ws {
proxy_pass https://serv_aplic:7001/;

proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";

proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}

figura 9

22
21 - - 1 SERVIDOR DE AUTENTICAÇÃO WEB SERVCGI_OPCUA

21.7 Configurando a Execução de POSTs e RESTs


Autorizados
Os exemplos de uso de interfaces REST e acionamento de POSTs mostrados na figura 8.1 são
protegidos de execução por usuários não autorizados a partir da configuração feita no
Adm_Certificados, conforme mostrado na figura 10.

figura 10

O Servidor FastCGI_OpcUA oferece a garantia de que eles só serão executados se as seguintes


condições estiverem satisfeitas:

✓ no momento do acionamento do POST, o usuário autenticado através do login no site do


SAGE em https://<servidor-sage> tenha a posse de um token JWT válido e não expirado
fornecido pelo site;

✓ o POST definido com a extensão “.opc” ou a interface REST cuja URL termine com
“.rest” estejam cadastrados no arquivo $BD/posts_opcua.cnf, gravado pelo
Adm_Certificados, para executar o script-shell ou programa homonimo, conforme no
exemplo da figura 11, associado a um conjunto de ações necessárias para executa-lo;

✓ o usuário possua Privilégios/Papéis configurados no gerenciador Adm_Certificados que


autorizem a execução das ações configuradas para o POST ou a interface REST.

Para a execução do POST, não é necessário que o SAGE esteja sendo executado, ou seja,
nenhum processo ou Visor do SAGE precisa estar ativo, o que permite então que os POSTs e
serviços REST possam ser usados para realizar tarefas administrativas como Geração da Base
de Dados, Ativação e Desativação do SAGE, etc.

23
21 - - 1 SERVIDOR DE AUTENTICAÇÃO WEB SERVCGI_OPCUA

O Adm_Certificados grava a configuração no arquivo $BD/posts_opcua.cnf como no exemplo


mostrado na figura 11.
#
# Autorização da execução de Aplicações a partir de POSTs recebidos pelo serv_cgi_OpcUA
#
# SCRIPT/PROGRAMA AÇÕES-NECESSÁRIAS
# =============== =================
teste_post ACAO_AtivarVisorDeTelas ACAO_VerTela ACAO_ExecutarBrSql
teste_post_admin ACAO_AtivarSAGE ACAO_DesativarSAGE

figura 11

Ao executar um POST ou interface REST com sucesso, o JWT é automaticamente revalidado e o


resultado da execução deve ser enviado pelo script ou aplicação do SAGE para o seu standard-
output, possibilitando que esse resultado seja recebido pelo executor do POST. O formato XML,
vídeo MP4, JASON, HTML, ASCII, binário, etc, do standard-output dependerá do contexto da
página HTML ou aplicação WEB que estiver executando o POST.

Se o SAGE estiver ativo, a execução do POST ou da interface REST, utiliará o ambiente da conta
ativa do SAGE (MigAchaPrincipal), ou, se o SAGE não estiver ativo, utiliará o ambiente da conta
usada no momento da instalação do servidor (normalmente a conta sagetr1).

Se o POST ou a interface REST tiverem parâmetros, esses parâmetros serão passados como
argumentos de ativação do script ou programa associado ao POST ou à interface REST.

24

Você também pode gostar