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 LDAP

=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

Onde

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

cd /bin ./run.sh

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

(Opcional) Configurar o SSO para o B2Bi Dashboard
Editar o arquivo customer_overrides.properties e adicionar as propriedades abaixo:

security.SSO_FORWARD_URL.WS.LOGOUT=/Signon/logout security.SSO_FORWARD_URL.DASHBOARD.LOGOUT=/Signon/logout security.SSO_FORWARD_URL.WS.TIMEOUT=/Signon/timeout security.SSO_FORWARD_URL.DASHBOARD.TIMEOUT=/Signon/timeout security.SSO_FORWARD_URL.WS.TIMEOUT=/Signon/timeout security.SSO_FORWARD_URL.DASHBOARD.TIMEOUT=/Signon/timeout
 * 1) SSO with B2Bi Dashboard
 * 1) SSO with B2Bi Dashboard

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

(Opcional) Configurar o SSO para o Mailbox (MBI)
Editar o arquivo customer_overrides.properties e adicionar as propriedades abaixo:

security.SSO_FORWARD_URL.MAILBOX.LOGOUT=\Signon\logout security.SSO_FORWARD_URL.MAILBOX.TIMEOUT=\Signon\timeout security.SSO_FORWARD_URL.MAILBOX.VALIDATION_FAILED=\Signon\validationerror
 * 1) SSO with Mailbox (MBI)
 * 1) SSO with Mailbox (MBI)

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

(Opcional) Configurar o SSO para o AFT or MyAFT
Editar o arquivo customer_overrides.properties e adicionar as propriedades abaixo:

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 security.SSO_FORWARD_URL.MYAFT.LOGOUT=\Signon\logout security.SSO_FORWARD_URL.MYAFT.TIMEOUT=\Signon\timeout security.SSO_FORWARD_URL.MYAFT.VALIDATION_FAILED=\Signon\validationerror
 * 1) SSO with AFT or MyAFT
 * 1) SSO with AFT or MyAFT

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

(Opcional) Outras URL de destino
Editar o arquivo customer_overrides.properties e adicionar as propriedades abaixo:

security.SSO_FORWARD_URL.LOGOUT=\Signon\logout security.SSO_FORWARD_URL.TIMEOUT=\Signon\timeout security.SSO_FORWARD_URL.VALIDATION_FAILED=\Signon\validationerror
 * 1) SSO with Unknown source
 * 1) SSO with Unknown source

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

=Configurando o SSP para o SSO=

Acessar o Configuration Manager do SSP, no meu caso:

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

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

2) Na aba Basic, informe:

3) Na aba Advanced, informe:

4) clique em Save.

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

2) Na aba Basic, informe:

3) 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: httppolicy_myfilegateway

3) Na aba Advanced, informe:

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: httpnetmap_myfilegateway

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


 * Outbound Node Name: outbound_myfilegateway
 * Primary Destination Address: sinode01.test.net
 * Primary Destination Port: 23000

Neste caso informamos o hostname e porta do B2Bi/SFG

clique em Save

3) Na aba Inbound Nodes, clique em New

na aba Basic e informar:


 * Inbound Node Name: inbound_myfilegateway
 * Peer Address pattern: *
 * Policy: httppolicy_myfilegateway

na aba Routing Node e informar:


 * Routing Node: outbound_myfilegateway

clique em Save

4) Na aba HTTP Rewrite,


 * Support HTML Rewrite: marcar este campo

depois clique em New, informar:


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

onde

clique em Save

5) clique em Save.

= Ver também =


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