IBM Sterling: Configurando o Single Sign-on entre o SSP, SEAS, B2BI e SFG

Neste artigo descrevo com configurar o Single Sign-on (SSO) entre o Sterling Secure Proxy (SSP), Sterling External Authentication Server (SEAS), Sterling B2BI e Sterling File Gateway (SFG), tornando a vida dos usuários e administradores mais fácil e segura.

O SSP é usado como um Proxy Reverso para o Sterling B2Bi/SFG e outros aplicativos IBM Sterling, permitindo que esses serviços localizados na Intranet possam ser acessados na Internet.

O Sterling External Authentication Server (SEAS) é usado para cria e gerencia tokens SSO, através do protocolo Open SAML. O SSO SAML funciona transferindo a identidade do usuário de um lugar (o provedor de identidade) para outro (o provedor de serviços).

Importante: O SSO é somente suportado para os seguintes protocolos HTTP, Connect:Direct®, FTP, and SFTP.

A seguir estão as passos que ocorrem durante o SSO entre um Trading Partner, SSP e SFG quando o SEAS é usado para gerar e gerenciar tokens:




 * 1) O Trading Partner conecta ao SSP e informa as credenciais (usuário e senha).
 * 2) O SSP passa as credenciais para o SEAS
 * 3) O SEAS autentica o usuário no LDAP
 * 4) O LDAP informa ao SEAS se autenticação do usuário foi verdadeira (true) ou não (false).
 * 5) Se a autenticação não for bem-sucedida, o SEAS enviará uma resposta negativa ao SSP e o SSP encerrará a sessão. Se a autenticação for bem-sucedida, SEAS gera e envia o token para SSP em resposta
 * 6) O SSP passa o nome de usuário e o token para B2Bi. O B2Bi valida SSO Token SEAS e concede/nega acesso ao SFG/Dashboard e demais funcionalidades.

Procedimento

=Configurando o SEAS para o SSO=

Os artigos descrevem a instalação e configuração do SEAS que vamos necessitar para o SSO.


 * IBM Sterling External Authentication Server (SEAS): Instalação


 * IBM Sterling External Authentication Server (SEAS): Configuração para OpenLDAP
 * IBM Sterling External Authentication Server (SEAS): Configuração para MS Active Directory

=Configurando o SSP=

Os artigos descrevem a instalação e configuração do SSP, SSPcm.


 * IBM Sterling Secure Proxy: Instalação
 * IBM Sterling Secure Proxy: Instalação do SSP Configuration Manager
 * IBM Sterling Secure Proxy: Configurar o SSP Engine no SSPcm

=Configurando o B2Bi/SFG para o SSO=

Copiar os arquivos do SEAS para B2Bi
estou fazendo um scp do diretório /lib/sterling/sfg-sso-plugin do SEAS Server para o B2Bi server

[siuser@sinode01 ˜] cd /tmp [siuser@sinode01 tmp]$ scp -r seasuser@seas.test.net:/home/seasuser/IBM/SEAS/lib/sterling/sfg-sso-plugin.

Verificando com o comando tree sfg-sso-plugin/

sfg-sso-plugin/ |-- private |   |-- hadrian-client.jar |   |-- seas-client.jar |   `-- seas-sso-impl.jar |-- properties |   |-- authentication_policy.properties_seas-auth_ext.in |   |-- seas-auth.properties |   |-- seas-sso.properties |   |-- security.properties_seas-sso_ext.in |   |-- servers.properties_seas-auth_ext |   `-- servers.properties_seas-sso_ext `-- seas-sso.jar

Configurar B2Bi/SFG para o SEAS
1) Copiar os arquivos de propriedades para o diretório properties do B2Bi/SFG

[siuser@sinode01 ˜] cd cp /tmp/sfg-sso-plugin/properties/security.properties_seas-sso_ext.in /home/siuser/IBM/SI/properties/. cp /tmp/sfg-sso-plugin/properties/authentication_policy.properties_seas-auth_ext.in /home/siuser/IBM/SI/properties/. cp /tmp/sfg-sso-plugin/properties/servers.properties_seas-sso_ext /home/siuser/IBM/SI/properties/. cp /tmp/sfg-sso-plugin/properties/servers.properties_seas-auth_ext /home/siuser/IBM/SI/properties/.

2) Criar o sub-diretório "/jar/seas-sso/1.0/private" e copiar os .jar

mkdir -p /home/siuser/IBM/SI/jar/seas-sso/1.0/private cp -v /tmp/sfg-sso-plugin/private/*.jar /home/siuser/IBM/SI/jar/seas-sso/1.0/private

3) Parar o B2Bi/SFG

cd /home/siuser/IBM/SI/bin ./hardstop.sh

4) No arquivo /home/siuser/IBM/SI/properties/server.properties_seas-sso_ext, descomentar e alterar a variável seas-sso:

seas-sso=/properties/seas-sso/1.0/seas-sso.properties



5) No arquivo /home/siuser/IBM/SI/properties/server.properties_seas-auth_ext, descomentar e alterar a variável seas-auth:

seas-auth=/properties/seas-auth/1.0/seas-auth.properties



6) Executar os comandos install3rdParty.sh para adicionar os .jar ao B2Bi:

cd /home/siuser/IBM/SI/bin ./install3rdParty.sh seas-sso 1.0 -j /tmp/sfg-sso-plugin/seas-sso.jar ./install3rdParty.sh seas-sso 1.0 -p /tmp/sfg-sso-plugin/properties/seas-sso.properties ./install3rdParty.sh seas-auth 1.0 -p /tmp/sfg-sso-plugin/properties/seas-auth.properties

Configurar a conexão ao SEAS no arquivo customer_overrides.properties
Editar o arquivo customer_overrides.properties e adicionar as propriedades abaixo:

seas-sso.EA_HOST=seas.test.net seas-sso.EA_PORT=61365 seas-sso.EA_SECURE_CONNECTION=false
 * 1) Conexao do B2B para o SEAS
 * 1) Conexao do B2B para o SEAS

mais detalhes em customer_overrides.properties:seas-sso.VARIABLES

Configurar o SSO para o MyFilegateway
Editar o arquivo customer_overrides.properties e adicionar as propriedades abaixo:

security.SSO_FORWARD_URL.MYFILEGATEWAY.LOGOUT=/Signon/logout security.SSO_FORWARD_URL.MYFILEGATEWAY.TIMEOUT=/Signon/timeout security.SSO_FORWARD_URL.MYFILEGATEWAY.VALIDATION_FAILED=/Signon/validationerror security.SSO_FORWARD_URL.FILEGATEWAY.LOGOUT=/Signon/logout security.SSO_FORWARD_URL.FILEGATEWAY.TIMEOUT=/Signon/timeout security.SSO_FORWARD_URL.FILEGATEWAY.VALIDATION_FAILED=/Signon/validationerror security.SSO_FORWARD_URL.AFT.LOGOUT=/Signon/logout security.SSO_FORWARD_URL.AFT.TIMEOUT=/Signon/timeout security.SSO_FORWARD_URL.AFT.VALIDATION_FAILED=/Signon/validationerror
 * 1) SSO with MyFilegateway
 * 1) SSO with MyFilegateway

Salve e feche o arquivo

Reinicie o B2Bi para que suas mudanças no arquivo customer_overrides.properties tenham efeito sobre o arquivo

cd /bin ./hardstop.sh ./run.sh

Veja mais opções em customer_overrides.properties:security.VARIABLES. Exemplos:


 * Configurar o SSO para o B2Bi Dashboard
 * Configurar o SSO para o B2Bi Dashboard
 * Configurar o SSO para o Mailbox (MBI)
 * Configurar o SSO para o AFT or MyAFT
 * Outras URL de destino

=Configurando o SSP para o SSO=

O quadro abaixo dá uma visão hierárquica da configuração necessária para configurar o SSO no SSP.

Configuração |-- External Authentication Server: seas_intranet |-- SSO Configuration: myfilegateway_sso |-- Engine: spnode01_engine |   |-- HTTP Adapter: myfilegateway_httpadapter |   |   |-- HTTP Netmap: myfilegateway_httpnetmap |   |   |   |-- Inbound Nodes: from_internet |   |   |   |   |-- HTTP Policy: myfilegateway_httppolicy |   |   |   |-- Outbound Nodes: to_myfilegateway |   |   |   |-- HTML Rewrite:

Essa visão facilita o entendimento da configuração, então a seguir descrevo a configuração de modo a reduzir a os passos tentando deixar mais simples a configuração

Acessar o Configuration Manager do SSP, no meu caso:

https://spnode01.teste.net:8443/SSPDashboard

Criando uma External Authentication Server
1) Clique no menu Advanced, depois clique no menu Actions > New SSO Configuration

2) Na aba Basic, informe:


 * EAS Name: seas_intranet
 * EAS Address: seas.test.net
 * EAS Port: 61365

3) clique em Save.

Criando uma SSO Configuration
1) Clique no menu Advanced, depois clique no menu Actions > New SSO Configuration

2) Na aba Basic, informe:


 * Name: myfilegateway_sso
 * Fully Qualified Host Name: spnode01.test.net --> hostname do SSP

3) Na aba Advanced, informe:


 * Default Landing Page: Selecionar [Enter in Textbox]
 * Text Box: /myfilegateway
 * SSO Cookie Secure Flag: não selecionar --> desmarcar pois não estou utilizando HTTPS

4) clique em Save.

Criando uma HTTP Policy
1) Clique no menu Configuration, depois clique no menu Actions > New Policy > HTTP Policy

2) Na aba Basic, informe:


 * Policy Name: myfilegateway_httppolicy

3) Na aba Advanced, informe:


 * User Authentication Type: Application Authentication
 * Through External Authentication: selecionar
 * External Authentication Profile: seas_ldap --> Executado neste passo: IBM Sterling External Authentication Server (SEAS): Configuração para LDAP
 * Internal UserId: selecione SSO token from External Authentication

4) clique em Save

Criando uma HTTP Netmap
1) Clique no menu Configuration, depois clique no menu Actions > New Netmap > HTTP Netmap

2) Na aba Basic, informe:


 * Netmap Name: myfilegateway_httpnetmap

3) Começar pela aba Outbound Nodes, clique em New, clicar na aba Basic e informar:


 * Outbound Node Name: to_myfilegateway
 * Primary Destination Address: sinode01.test.net
 * Primary Destination Port: 23080

clique em OK

4) Na aba Inbound Nodes, clique em New

na aba Basic e informar:


 * Inbound Node Name: from_internet
 * Peer Address pattern: *
 * Policy: myfilegateway_httppolicy

na aba Routing Node e informar:


 * Routing Node: to_myfilegateway

clique em OK

4) Na aba HTTP Rewrite,


 * Support HTML Rewrite: marcar este campo

depois clique em New, informar:


 * Server URL:  http://sinode01.test.net:23080/myfilegateway 
 * Proxy URL:  http://spnode01.test.net:23080/myfilegateway 

onde

clique em Save

5) clique em Save.

Criando uma HTTP Adapter
1) Clique no menu Configuration, depois clique no menu Actions > New Adapter > HTTP Reverse Proxy

2) Na aba Basic, informe:


 * Adapter Name: myfilegateway_httpadapter
 * Listen Port: 23080 
 * NetMap: myfilegateway_httpnetmap
 * Standard Routing Node: to_myfilegateway
 * Support HTML Rewrite: selecionar

3) clique em Add e informar


 * Engines: spnode01_engines
 * EA Server: seas_intranet

4) Na aba Advanced, informe:


 * SSO Configuratin: myfilegateway_sso

5) clique em Save

Iniciando o HTTP Adapter
1) Clique no menu Monitoring, depois clique no menu Engine Status (All) > spnode01_engine

2) Clique no botão start ao lado do myfilegateway_httpadapter



3) Resultado



4) Acessar a url do SSP

http://spnode01.test.net:23000/myfilegateway

= Ver também =


 * IBM Sterling Secure Proxy: Instalação
 * IBM Sterling Secure Proxy: Instalação do SSP Configuration Manager
 * IBM Sterling Secure Proxy: Configurar o SSP Engine no SSPcm


 * Artigos sobre IBM Sterling
 * Mais Artigos sobre Cloud / WebDev / Tecnologias