Please enable JavaScript.
Coggle requires JavaScript to display documents.
Autenticação e Autorização centralizados - Coggle Diagram
Autenticação e Autorização centralizados
SSO (Single Sign On)
o serviço cria um
token
de autenticação que lembra que o usuário foi verificado
Um
token de autenticação
é uma informação digital armazenada no navegador do usuário ou nos servidores do serviço SSO
os tokens de autenticação são escritos em
SAML
(Security Assertion Markup Language)
funciona passando informações de autenticação em um formato específico entre duas partes, geralmente um provedor de identidade (idP) e um aplicativo da web;
SAML é um padrão aberto usado para autenticação
SAML funciona trocando informações do usuário, como logins, estado de autenticação, identificadores e outros atributos relevantes entre a identidade e o provedor de serviços
SAML SSO
O SAML Single Sign-On é um mecanismo que aproveita o SAML, permitindo que os usuários efetuem logon em vários aplicativos da Web após efetuarem login no provedor de identidade;
SAML and Auth0:
https://auth0.com/blog/how-saml-authentication-works/#How-does-SAML-Authentication-Work
Autenticação do tipo
federada
é uma tecnologia que combina várias telas de login de
aplicativos diferentes em uma
Auth0
fluxos de autorização específicos para aplicativos da Web,
aplicativos de desktop, telefones celulares e dispositivos diversos
permite que os aplicativos obtenham acesso limitado às contas de usuários em um serviço HTTP, tal como o Facebook, GitHub, e DigitalOcean
funciona delegando a autenticação de usuário ao serviço que hospeda a conta do usuário, e autorizando aplicações de terceiros a acessar a conta do usuário
Papéis OAuth
➢ Proprietário do Recurso;
➢ Cliente;
➢ Servidor de Recurso;
➢ Servidor de Autorização;
Tipos de Concessão de Autorização
• Código de Autorização: usado com aplicações do lado servidor;
mais comumente
usado
• Implícito: usado com Apps Móveis ou Aplicações Web (aplicações que rodam no dispositivo do usuário);
confidencialidade do segredo
do cliente não é garantida
• Credenciais de Senha do Proprietário do Recurso: usado com aplicativos confiáveis, como os de propriedade do próprio serviço;
só deve ser usado se o aplicativo for confiável para o usuário
• Credenciais do Cliente: usado no acesso de API das Aplicações;
fornece para a aplicação
uma forma de acessar sua própria conta de serviço
LDAP (lightweight directory access protocol)
O uso mais comum do protocolo LDAP é fornecer um local para a autenticação centralizada dos usuários de uma rede, um usuário não pode acessar a rede ou informações armazenadas, sem primeiro se autenticar no ambiente
O protocolo LDAP é usado no Active Directory Microsoft, mas também é encontrado em outras ferramentas como OpenLDAP, Red Hat Directory Server e IBM Security Directory Server.
LDAP permite que as organizações armazenem, enderecem, gerenciem e protejam informações sobre a organização, usuários da rede e seus ativos.
LDAP ou Lightweight Directory Access Protocol é um protocolo para serviços de diretório que organiza dados hierarquicamente e possibilita que os usuários de uma rede local ou pública localizem dados sobre organizações, indivíduos e outros recursos, como dispositivos, arquivos e aplicações.
Utiliza SSO
Keycloak
é uma solução de gerenciamento de identidade e acesso de código aberto voltada para aplicativos e serviços modernos
é um projeto upstream para o Red Hat SSO
suporta OpenID
Connect, OAuth 2.0 e SAML 2.0;
integrações:
• Java: Spring Boot (spring-boot-keycloak-starter), Quarkus (quarkskeycloak-authorization) e Micronaut;
• Python: python-keycloak;
• Scala: keycloak4s;
• C#: Keycloak.Net;
o Keycloak é open-source e tem Apache
License 2.0, possui 3 distribuições
diferentes: Server, Docker Image e Operator