Histórico da Página
...
Então, igualmente o aplicativo estabelece uma relação de confiança com o IDP e assume que o usuário devolvido é de fato válido e autêntico.
...
Preparando o TFS para o Single-Sign-On
...
Passo 2: Preencha os campos URL do Fluig Identity e Token de Config. da Aplicação e clique no botão One-Click. O módulo Proviisonador Fluig deve buscar e armazenar as configurações do Fluig Indentity.
Executável SAML
Aviso | ||
---|---|---|
| ||
Estas instruções devem ser seguidas para que o Executável SAML funcione! |
As aplicações Power Builder são instaladas através de um instalador do tipo Wizard que, além de copiar todos os arquivos corretamente na pasta de instalação, ainda efetua o registro da aplicação no Registro do Windows (Regedit). Além da informação do executável, é criado um par chave/valor com chave 'Path' e com valor que contém os caminhos dos diretórios onde se encontram as DLL's necessárias para execução da aplicação Power Builder.
Na solução Executável SAML, ao efetuar o handshake SAML após o launcher da aplicação, o Fluig Identity invoca o executável Power Builder através do Desktop Launcher, que é uma aplicação utilitária executável (appinvoker.exe), que por sua vez realiza a chamada do executável do Power Builder propriamente dito.
O problema é que o executável Power Builder, ao ser invocado pelo appinvoker.exe, herda dele todas as configurações do Registro do Windows. Como o appinvoker não tem a chave 'Path' configurada, também não a repassa para o executável Power Builder que fica sem "saber" onde estão as DLL's e portanto, incapaz de funcionar corretamente.
Para que o executável Power Builder possa ser executado corretamente, deve ser criado o par chave/valor do tipo 'Valor da Cadeia de Caracteres' na configuração Regedit do appinvoker exatamente igual ao configurado para o executável Power Builder.
Para acessar as aplicações PowerBuilder o Fluig deve chamar o aplicativo Abertura passando alguns parâmetros. O acesso aos aplicativos é sempre através do Abertura.
Parâmetros
O Abertura aguarda 5 parâmetros, separados por espaço, passados no formato chave e valor. Todas as chaves iniciam com sinal de menos (-) e terminam com sinal de igual (=) e em seguida é informado o valor. Caso algum parâmetro não precise ser informado, não deve ser passada nem a chave e nem o valor.
Exemplo da linha de parâmetros: "-sgMdl=EM -sgTrn=GARBOUGA -cdUsu=TB -samlSession=51438757-f6c0-4fb8-8877-489451e672f4 -samlTimeout=60"
Definição dos parâmetros:
-sgMdl=XX - Módulo ou Aplicação a ser acessada;
-sgTrn=XXXXXXXX – Nome da transação (tela) que deve ser aberta ao entrar na aplicação;
-cdUsu=XX – Nome do usuário para fazer login;
-samlSession=XXXX – Número da sessão que o Fluig grava na tabela T400AUTH do banco SEGURANCA para o usuário. O mesmo número deve ser passado nesse parâmetro para validação no momento do login;
-samlTimeout=99 – Tempo em segundos que a sessão gravada na tabela T400AUTH permanece válida para efetuar o login.
Os parâmetros “-cdUsu=”, “-samlSession=” e “-samlTimeout=” são obrigatórios para Abertura identificar que foi o Fluig que executou o Abertura.
Aplicação Abertura
O aplicativo Abertura é um centralizador de módulos ou de sistemas da TFS. Abaixo exemplo da tela inicial:
O Abertura aguarda uma string com os parâmetros enviados pelo Fluig. Caso não forem passados os parâmetros obrigatórios, o Abertura vai abrir normalmente e pedir usuário e senha para logar em qualquer módulo TFS, não identificando o login através do Fluig.
Com os parâmetros obrigatórios validados (“-cdUsu=”, “-samlSession=” e “-samlTimeout=”), o Abertura irá identificar que a requisição foi através do Fluig e irá repassá-los ao módulo que o usuário quer entrar. Não sendo necessário informar usuário e senha novamente, já que usuário já está autorizado pelo Fluig.
O Fluig deve gravar uma sessão nova para cada requisição de Módulos PowerBuilder. A sessão é caracterizada por uma linha no banco SEGURANCA, na tabela T400AUTH. A sessão é por usuário. O número da sessão gravada no banco deve ser passado na chave “-samlSession=”, junto com as chaves “-cdUsu=” e “-samlTimeout=”. Caso a sessão não estiver gravada no banco, o Abertura irá retornar uma mensagem de erro.
Quando o Abertura encontra uma sessão aberta, verifica se ela ainda é válida. Caso o timeout for “-samlTimeout=60”, a sessão gravada deve ser consumida em 1 minuto, caso contrário irá devolver uma mensagem de erro de tempo de sessão expirado.
Quando o Abertura valida a sessão passada, verifica se existe modulo e transação informada.
Caso o Abertura receber o parâmetro indicando um módulo para acessar (-sgMdl=), ele vai abrir diretamente o módulo pedido não parando na tela inicial.
Exemplo: -sgMdl=EM -cdUsu=TB -samlSession=51438757-f6c0-4fb8-8877-489451e672f4 -samlTimeout=60.
No exemplo, foi validado o usuário, a sessão e o timeout de sessão e o Abertura chamou diretamente o módulo EM (Empréstimos) sem pedir usuário e senha. Caindo na tela de abrangência.
Além do módulo (-sgMdl=) o Fluig pode enviar para o Abertura a transação que deseja abrir. Passando o parâmetro -sgTrn=XXXXXXXX. Assim, o Abertura chama o módulo desejado e abre a transação diretamente, como se estivesse escolhido pelo menu da aplicação PowerBuilder.
Por exemplo, -sgMdl=EM -cdUsu=TB -samlSession=51438757-f6c0-4fb8-8877-489451e672f4 -samlTimeout=60 -sgTrn=GARBPART
No exemplo, foi validado o usuário, a sessão e o timeout de sessão e o Abertura chamou diretamente o módulo EM (Empréstimos) sem pedir usuário e senha. E como recebeu também o parâmetro –sgTrn=GARBPART abriu a tela de Garantias e Bens.
Aviso | ||
---|---|---|
| ||
Estas instruções devem ser seguidas para que o Executável SAML funcione! |
As aplicações Power Builder são instaladas através de um instalador do tipo Wizard que, além de copiar todos os arquivos corretamente na pasta de instalação, ainda efetua o registro da aplicação no Registro do Windows (Regedit). Além da informação do executável, é criado um par chave/valor com chave 'Path' e com valor que contém os caminhos dos diretórios onde se encontram as DLL's necessárias para execução da aplicação Power Builder.
Na solução Executável SAML, ao efetuar o handshake SAML após o launcher da aplicação, o Fluig Identity invoca o executável Power Builder através do Desktop Launcher, que é uma aplicação utilitária executável (appinvoker.exe), que por sua vez realiza a chamada do executável do Power Builder propriamente dito.
O problema é que o executável Power Builder, ao ser invocado pelo appinvoker.exe, herda dele todas as configurações do Registro do Windows. Como o appinvoker não tem a chave 'Path' configurada, também não a repassa para o executável Power Builder que fica sem "saber" onde estão as DLL's e portanto, incapaz de funcionar corretamente.
Para que o executável Power Builder possa ser executado corretamente, deve ser criado o par chave/valor do tipo 'Valor da Cadeia de Caracteres' na configuração Regedit do appinvoker exatamente igual ao configurado para o executável Power Builder.
Deck of Cards | ||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||
|
...
O provisionamento permite que todas as operações efetuadas no Fluig Identity referentes a criação e gerenciamento de Usuários, Perfis (Roles) e Autorizações (Entitlements) sejam refletidos no TFS. Para que haja sincronia entra as informações no Fluig Identity e o TFS, o FI invoca serviços RESTful disponibilizadas pelo TFS. Assim sendo, o TFS teve que implementar, disponibilizar expor estes serviços que ficam acessíveis através de uma URL. Esta URL deve estar configurada na aplicação.
Configurando a aplicação para o provisionamento
Para configurar o TFS para o provisionamento, clique na aba Provisionar e preencha os campos conforme imagem abaixo:
Aviso | ||
---|---|---|
| ||
O Modelo RAC para o TFS Core Banking deve ser sempre o Modelo Datasul! |
Particularidades na configuração
...
Bloco de código | ||||
---|---|---|---|---|
| ||||
<VirtualHost *:80> ProxyPreserveHost On ProxyPass /jsp_pf http://10.51.6.115:8080/jsp_pf ProxyPassReverse /jsp_pf http://10.51.6.115:8080/jsp_pf ProxyPass /jsp_pf_loc http://10.51.6.123:8085/jsp_pf ProxyPassReverse /jsp_pf_loc http://10.51.6.123:8085/jsp_pf ProxyPass /jsp_pf_dev http://vfluigplatdev:9090/jsp_pf ProxyPassReverse /jsp_pf_dev http://vfluigplatdev:9090/jsp_pf ProxyPass /jsp_pf_hml http://10.51.2.119:8080/jsp_pf ProxyPassReverse /jsp_pf_hml http://10.51.2.119:8080/jsp_pf ProxyPassReverse /jsp_pf_hml http://10.51.2.119:8080/jsp_pf <Location "/jsp_pf"> Order allow,deny Allow from all </Location> <Location "/TOTVSIntegration"> Order allow,deny Allow from all </Location> </VirtualHost>/jsp_pf <Location "/jsp_pf"> Order allow,deny Allow from all </Location> <Location "/TOTVSIntegration"> Order allow,deny Allow from all </Location> </VirtualHost> |
Sincronização
A sincronização do módulo de permissionamento é uma operação que deve ser realizada inicialmente para o que todos os dados do modelo de permissionamento do TFS sejam importados para o Fluig Identity. Trata-se de uma carga full inicial e deve ser executado somente uma vez. A partir daí, toda operação referente a permissionamento, deve ser feita no Fluig Identity e não mais no módulo de Segurança do TFS.
Para fazer a sincronização, entre nas configurações da aplicação, aba Recursos e clique no botão Synchronize.