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:
- O Trading Partner conecta ao SSP e informa as credenciais (usuário e senha).
- O SSP passa as credenciais para o SEAS
- O SEAS autentica o usuário no LDAP
- O LDAP informa ao SEAS se autenticação do usuário foi verdadeira (true) ou não (false).
- 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
- 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): 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 <seas_dir>/lib/sterling/sfg-sso-plugin do SEAS Server para o B2Bi server
[siuser@sinode01 ˜] cd /tmp [siuser@sinode01 tmp]$ scp -r [email protected]:/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 "<B2Bi_install_dir>/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=<SI_install>/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=<SI_install>/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:
################################### # Conexao do B2B para o SEAS ################################### seas-sso.EA_HOST=seas.test.net seas-sso.EA_PORT=61365 seas-sso.EA_SECURE_CONNECTION=false
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:
################################### # SSO with MyFilegateway ################################### 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
Salve e feche o arquivo
Reinicie o B2Bi para que suas mudanças no arquivo customer_overrides.properties tenham efeito sobre o arquivo
cd <si_install_dir>/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
Campo | Valor |
---|---|
Server URL | ipaddress/hostname of B2BI http://SBIserver:port/myfilegateway |
Proxy URL | Ipaddress/hostname of SSP server http://SSPserver:port/myfilegateway |
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 <Porta do Myfilegateway no B2B/SFG>
- 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