Árvore de páginas

Objetivo do documento

O objetivo deste documento é demonstrar como ocorre o processo de login automático entre CRM e GoodData, possibilitando que os usuários do CRM acessem indicadores e dashboards diretamente no GoodData, de forma transparente, sem a necessidade de se autenticar manualmente nas duas ferramentas. Uma vez implementado, o mecanismo possibilita que o login no GoodData seja realizado de forma automática quando um usuário do CRM solicitar o acesso a algum recurso do GoodData a partir dos menus disponibilizados no CRM.

Contexto geral

Federação de acesso

A federação consiste na existência de um repositório único e centralizado com todas as credenciais de usuários que precisam acessar recursos em ferramentas ou sistemas diferentes, sem a necessidade de se ter usuário e senha específicos para cada um deles, ou seja, um mesmo usuário e senha concede acesso a um determinado pool de recursos. Nesse caso, os dados de acesso não ficam armazenados ou são controlados pelas ferramentas que fornecem os serviços específicos, como e-mail ou assinatura eletrônica, por exemplo, mas sim nesse repositório ou provedor central.

Protocolo SAML

O SAML (Security Assertion Markup Language) é um protocolo que possibilita a implementação prática do conceito de federação. Ele é um padrão de federação aberta e permite que um identity provider (IdP) autentique usuários por meio de um token de autenticação em outros aplicativos, conhecidos como service providers (SP). Isso possibilita que o SP opere sem precisar executar uma autenticação própria para integrar usuários internos e externos. Por meio do SAML, é possível implementar serviços de login único (SSO), estabelecendo uma comunicação segura entre sistemas que possam habilitação para utilização desse protocolo.

Implementação prática

Dentro do contexto da integração entre CRM e GoodData, todas as informações dos usuários estarão armazenadas dentro do CRM. Por essa razão, nesse processo de integração, o CRM irá atuar no papel de identity provider, ou seja, será ele o responsável por prover as identidades dos usuários. Já o GoodData irá atuar no papel de service provider, ou seja, ele será a ferramenta que provê o serviço que o usuário pretende utilizar: nesse caso, os indicadores que serão disponibilizados.

Configuração

Passo a passo

São necessários três passos para que a integração entre CRM e GoodData via SAML ocorra:


1. Na tela de configurações de integração do CRM, deverá ser habilitado o parâmetro de ativação do login integrado. Uma vez que esta configuração esteja salva, o CRM estará apto a enviar pedidos de login para o GoodData. Além disso, a ativação dessa configuração permite o download do arquivo XML da relação de confiança.

Nesse arquivo estão contidas informações importantes como o certificado que será utilizado para assinatura das mensagens, o nome do emissor da mensagem, URL para login, dentre outras. Mais detalhes sobre o XML podem ser obtidos aqui.


2. As informações geradas no XML da relação de confiança do CRM deverão ser extraídas e cadastradas no GoodData, conforme descrito na documentação do GoodData. Nesse caso, as informações serão enviadas para as APIs do GoodData via request. Isso fará com que o CRM seja cadastrado como um provedor de identidade dentro do GoodData, estabelecendo entre eles uma relação de confiança. Para realização do cadastro, o usuário utilizado deverá possuir permissão de administrador de domínio.


3. O último passo é configurar o GoodData para que aceite login e criação de novos usuários a partir de requisições do CRM. Por padrão, o CRM terá permissão para efetuar os logins, porém, a permissão padrão não é suficiente para que o CRM possa criar usuários. Para isso, é necessário utilizar a API de configuração, conforme descrito aqui.

Premissas

  • Para que o parâmetro de login integrado possa ser habilitado, é necessário habilitar previamente o parâmetro Habilitar integração com o GoodData na tela de configurações da integração;
  • O XML da relação de confiança só ficará disponível para download depois de ativar e salvar o login integrado;
  • O campo URL de domínio deverá ser preenchido com o endereço do domínio no qual será estebelecido o processo de login integrado;
  • Para utilização dos recursos provenientes da integração com o GoodData, o módulo do GoodData (analytics-studio) deverá ser liberado no plano do cliente cadastrado no Cloud Manager;
  • Não há associação entre o Analytics Studio com o atual Analytics do CRM. Desta forma, poderá haver a opção pelo uso de um ou do outro, ou ainda de ambos.
  • Sem rótulos