O SSO (Sigle Sign On) é uma ferramenta de controle de acesso para aplicações distribuídas na web com integração a sistemas corporativos e que utiliza o protocolo OAuth 2.0. Ele é responsável por gerenciar o processo de autenticação e permissões dos usuários em múltiplos serviços, dessa forma, é possível logar em um desses serviços e ter acesso aos demais serviços sem precisar logar em cada um deles. Um exemplo conhecido de sistema que utiliza o SSO é o Gmail (conta Google).
O processo para configurar o login por Redes Sociais, é diferente da autenticação via SSO, veja aqui como configurar. |
Nos subtópicos abaixo, você verá que há duas formas de configurar a autenticação via SSO dependendo de como foi criado o projeto.
A seleção da autenticação pode ser feita durante ou após a criação do projeto no Cronapp. Na janela de criação do projeto é possível selecionar a opção SSO no campo Tipo de Autenticação (Figura 1).
Figura 1 - Seleção do tipo de autenticação na criação do projeto
Ao criar o projeto já como a autenticação do tipo SSO, a view de login virá somente com o botão Entrar (Figura 1.1) já configurado para acessar o servidor SSO configurado.
Figura 1.1 - Projeto já criado com SSO
Se a configuração for após a criação do projeto, acesse a aba Configurações do Projeto na Janela de Configurações do Projeto e selecione a opção SSO (Oauth2) para exibir o acordeão Configurações da Autenticação (Figura 2).
Figura 2 - Seleção do tipo de autenticação após o projeto criado
Após adicionar um botão "Login SSO" na tela de login, é necessário que ele chame uma função com o bloco Login via SSO (Oauth2), a página de login ficará como abaixo (Figura 2.1), contendo duas formas de logar.
Figura 2.1 - Botão de Login SSO adicionado
Após a configuração do projeto para autenticação via SSO, também é possível fazer autenticação manualmente, através da URL, exemplo:
|
Após a criação do projeto, se for necessário alterar o tipo de autenticação de Token para SSO, por exemplo, será necessário modificar manualmente as páginas de login web (Localização:
) e login mobile (Localização:
), retirando os campos de Entrada de texto ("usuário" e "senha"), os links ("redefinir senha" e "cadastre-se") e o botão "Entrar". Para autenticação via SSO, basta um botão que execute o bloco Login via SSO (Oauth2). |
Após seguir os passos da Figura 2.1, acesse a aba Configurações da Autenticação e preencha os campos informados na Figura 3.
Figura 3 - Aba Configurações da Autenticação da janela de Configurações do Projeto
Segredo do Cliente: valor do segredo do cliente encontrado nas configurações do provedor de autenticação SSO.
Alguns provedores SSO só exibem o segredo no momento da criação, Caso tenha perdido, será necessário excluir o antigo e criar um novo. |
Escopos: define os dados concedido para o provedor SSO, sendo possível adicionar novos escopos, separando-os com o caractere espaço " ".
Cuidado ao alterar as informações dos Escopos, se for inserido algo que não exista, gerará um erro. Alguns provedores SSO exigem parâmetros específicos para funcionar, dessa forma, acesse a documentação do seu provedor SSO para garantir a configuração correta. Exemplo: A depender de como o provedor Azure esteja configurado, ele exigirá o parâmetro "Read.User", assim, o campo Escopo deve ser preenchido da seguinte forma: |
Por fim, após feita a configuração e clicar no botão de login, o usuário será direcionado para o serviço de autenticação via SSO (exemplo na figura 3.1) e que após logar, retornará para a aplicação já com o usuário autenticado.
Figura 3.1 - Redirecionamento para a página do servidor de SSO configurado
Caso ocorra algum erro de autenticação via SSO, analise o log no Console do depurador (dev time) ou os logs da aplicação (run time) para obter detalhes. |