Como configurar Provedor SAML para autenticação com o Learning.rocks
Como configurar o Learning.rocks no seu SAML Provider
Google WorkSpace
- Logar no admin do Google e clicar em Web and Mobile Apps, Add App, Custom.;
- Preencher o nome do app como Learning.rocks;
- Download Metadata (guarde esse arquivo pra enviar pra gente);
- Na próxima tela, você vai configurar os dados de serviço do Learning.rocks;
- ACS URL - https://auth.skore.io/saml
- Entity ID - auth.skore.io
- Start URL - deixar em branco
- NameID format - selecionar EMAIL;
- Name ID - Basic Information > Primary Email
- Baixar o XML de configuração.
AZURE ADFS
- Entrar em Enterprise Applications;
- Clicar em "New Application", "Create your own application";
- Colocar nome "Skore.io" e selecionar "integrate any other application you don't find in your gallery";
- Clicar em Single Sign-on e selecionar a opção SAML:
- Trocar Entity ID para: auth.skore.io
- Trocar Reply URL para: https://auth.skore.io/saml
- Configure as permissões de usuário para permitir acesso dos grupos corretos à aplicação;
- Configure os claims para passar o email do usuário como nameID;
- Na aba de SAML Signing Certificate, campo Signing Option, selecione: Sign SAML Response;
- Baixar o XML de configuração.
MICROSOFT ACTIVE DIRECTORY
- Criar um novo Relaying Party;
- Em Identifiers, cadastrar:
- Em endpoints, configurar:
- SAML Assertion Consumer Endpoints:
- Trusted URL: https://auth.skore.io/saml
- Index: 1
- SAML Logout Endpoints:
- Trusted URL: https://auth.skore.io
- Response URL: https://auth.skore.io/saml
- Em Advanced, garantir que o algoritmo está selecionado SHA-256;
- Cadastrar um Claim Issuance Policy:
- Incoming Claim Type: E-mail Address
- Outgoing Claim Type: Name Id
- Outgoing Name Id Format: Email
- Checar "pass through all claim values"
- Baixar o XML de configuração.
Keycloack
- Acesso inicial:
- Acesse o Keycloak Admin Console;
- Defina onde o client será criado:
- Pode ser no Realm master, ou
- Em um novo Realm criado especificamente para essa integração.
- Criação do Client
- No menu lateral, acesse Clients.
- Clique em Create client para criar um novo client SAML.
- Configurações básicas (Settings)
- Client ID: auth.skore.io
- Name: Qulture Rocks
- Root URL: https://auth.skore.io
- Valid Redirect URIs: https://auth.skore.io/*
- Master SAML Processing URL: https://auth.skore.io/saml
- SAML Capabilities
- Name ID format: email
- Force POST binding: ON
- Include AuthnStatement: ON
- Signature and Encryption
- Sign documents: OFF
- Sign assertions: ON
- Signature Algorithm: RSA_SHA256
- Canonicalization method: EXCLUSIVE
- Chaves (Keys)
- Acesse a aba Keys;
- Desabilite a opção Signing keys config.
- Client Scopes / Mapeamento de atributos
- Acesse a aba Client Scopes;
- Crie um novo Mapper com as seguintes configurações:
- Mapper type: User Property
- Name: email-nameid
- Property: email
- SAML Attribute Name: NameID
- SAML Attribute Format: Basic
- Geração do XML de metadados
- Salve todas as configurações do client;
- Acesse Realm Settings;
- Abra a aba Endpoints;
- Clique em SAML 2.0 Identity Provider Metadata;
- O XML de configuração será exibido, faça o download do arquivo.
Informações Adicionais sobre configuração do SAML Provider
Nós do Learning.rocks precisamos ter os seguintes pontos bem claros:
- Se usuários forem autenticados pelo seu provider, mas não existirem no Learning.rocks, devemos criá-los?
- Se sim, quais os nomes dos campos que deveremos utilizar para mapear para nossos campos de e-mail, nome e username?
- Devemos adicioná-los a algum time específico? (opcional)