01. INTEGRAÇÃO
A integração com o TOTVS Identity será feita pelo protocolo SAML 2.0 - Security Assertion Markup Language (http://en.wikipedia.org/wiki/Security_Assertion_Markup_Language). O Protocolo SAML é ideal para realizar um SSO - Single Sign On através de uma aplicação Web-Based.
A figura abaixo detalha o fluxo de atividades no cenário onde o usuário acessa via Identity Provider (TOTVS Identity) um serviço/aplicativo do Service Provider (Software TOTVS).
A próxima figura detalha o fluxo de atividades no cenário onde o usuário acessa um serviço/aplicativo diretamente no Service Provider (Software TOTVS). Esse cenário não estará disponível para aplicações Desktop (.exe).
02. INTEGRAÇÃO
SAML - Security Assertion Markup Language
Padrão aberto de autenticação e autorização para Single Sign-On (SSO) para web
http://en.wikipedia.org/wiki/Security_Assertion_Markup_Language
http://en.wikipedia.org/wiki/SAML_2.0
IDP - Identity Provider (TOTVS Identity)
Autentica o usuário e gera o assertion
http://en.wikipedia.org/wiki/Identity_provider
SP - Service Provider (Software TOTVS)
Verifica o assertion e disponibiliza o serviço
http://en.wikipedia.org/wiki/Service_provider
Assertion
XML com tokens de segurança da autenticação
http://en.wikipedia.org/wiki/SAML_2.0#SAML_2.0_Assertions
Resource
Serviço ou aplicativo do Service Provider
Metadata
XML com informações sobre o Identity Provider ou Service Provider para assegurar a comunicação entre eles
http://en.wikipedia.org/wiki/SAML_2.0#SAML_2.0_Metadata
03. REQUISITOS
- TOTVS Identity
- Endereço (URL) do XML metadata.
Exemplo: https://www.fluigidentity.com/cloudpass/saml2/metadata
- Software TOTVS
- UI na Política de Segurança do sistema para configuração do gerenciador de identidade onde o usuário informará:
- Endereço do IDP;
- O endereço que o Software TOTVS responderá como SP
Exemplo: http://myhostname:8080/spEntityID, esse será entityID do SP;
- Lista de endereços que podem utilizar o SSO através do SP
Exemplo: http://myhostname:8080/
- Certificado Digital
- HTTP configurado que responda aos endereços:
- XML do metadata do SP
Exemplo: http://myhostname:8080/spEntityID/saml2/metadata;
- Serviço do SAML do SP
Exemplo: http://myhostname:8080/spEntityID/saml2/get
- Reposta ao assertion do IDP
Exemplo: http://myhostname:8080/spEntityID/saml2/post