SAML (Security Assertion Markup Language) é um padrão aberto que troca informações de autenticação entre provedor de serviços e um provedor de identidade (IdP). Dessa forma, é possível usar um IdP de terceiros para autenticar usuários e passar informações de identidade para o provedor de serviços por um arquivo XML assinado digitalmente.
Nos subtópicos abaixo, você verá que há duas formas de configurar a autenticação via SAML dependendo de como o projeto foi criado.
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 SAML 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 com a autenticação do tipo SAML, a view de login virá somente com o botão Entrar (Figura 1.1) já configurado para acessar o servidor SAML configurado.
Figura 1.1 - Tela de login de projeto criado com autenticação via SAML
Se a configuração for após a criação do projeto, siga os passos da Figura 2 para selecionar a autenticação SAML em sua configuração.
Figura 2 - Seleção da autenticação após o projeto criado
Após a configuração do projeto para autenticação via SAML, também é possível fazer autenticação manualmente, através da URL, exemplo:
|
Após alterar o tipo de autenticação de Token para SAML, será necessário modificar manualmente as páginas de login web (Localização:
) retirando os campos de "Usuário" e "Senha", os links "Redefinir Senha" e "Cadastre-se" e o botão "Entrar". |
Para a autenticação via SAML é preciso apenas de um botão que execute o bloco Login via SSO (Oauth2) - embora o nome deste bloco faça referência à autenticação via SSO, também pode ser usado para autenticação SAML. Após essas alterações a tela de login resultante deverá ser semelhante a da Figura 1.1. Também é possível personalizar o logout da aplicação, para isso é necessário o uso do bloco Logout.
Após realizar a seleção da autenticação, ainda na aba de Configurações do Projeto, clique na seta (destaque 1 da Figura 3) para abrir as Configurações de Autenticação do Saml e preencha os campos (Figura 3).
Figura 3 - Aba Configurações da Autenticação da janela de Configurações do Projeto
Sempre Exigir Autenticação: caso habilitado, a aplicação sempre exigirá que o usuário autentique no servidor de autenticação.
Para que a autenticação na aplicação ocorra com sucesso, é necessário adicionar o arquivo com a chave de autenticação do SAML no projeto. Para isso é preciso que o modo avançado esteja habilitado (destaque 1 da Figura 3.1). Feito isso, no diretório resources (destaque 2 da Figura 3.1), faça o upload do arquivo .jks (destaque 3 da Figura 3.1). Após upload, é preciso informar o nome do arquivo .jks no campo Arquivo de Chaves nas Configurações do Projeto.
Figura 3.1 - Upload do arquivo .jks no diretório resources
Por fim, após feitas as configurações e clicar no botão para login (Figura 1.1), o usuário será direcionado para o serviço de autenticação via SAML (exemplo na Figura 3.1) e, após preencher os campos de usuário e senha, retornará para a aplicação Cronapp já com o usuário autenticado.
Figura 4 - Página do servidor de autenticação SAML configurado