Português (Portugal)
  • SSO
  • IdP
  • SAML
  • Enterprise SSO
  • OIDC

SSO vs SAML, explicado para todos

SSO, SAML são muitas vezes usados vagamente e podem ser interpretados de diferentes maneiras. Neste artigo, vamos clarificar estes conceitos, explicar como eles se relacionam entre si, e fornecer exemplos reais para torná-los mais fáceis de entender.

Guamian
Guamian
Product & Design

SSO, SAML são muitas vezes usados vagamente e podem ser interpretados de diferentes maneiras. Neste artigo, vamos clarificar estes conceitos, explicar como eles se relacionam entre si, e fornecer exemplos reais para torná-los mais fáceis de entender.

O que é SSO?

SSO (Single Sign-On) é um processo de autenticação que permite que um utilizador faça login uma vez e aceda a múltiplas aplicações ou serviços sem precisar fazer login novamente para cada um. No entanto, esta definição geral pode aplicar-se a diferentes cenários quando o SSO é utilizado.

Existem vários cenários onde o SSO entra em jogo.

Social SSO

Às vezes, as pessoas referem-se ao login social como social SSO. Por exemplo, os utilizadores podem usar o login do Google para criar uma conta numa nova aplicação, usando diretamente a identidade e informações armazenadas no Google. Neste cenário, o utilizador gere a sua própria identidade.

O Social SSO torna mais fácil para os utilizadores controlarem as suas informações, reduzindo os passos tediosos no processo de criação de conta e login. O Social SSO geralmente depende de protocolos padrão abertos como OAuth 2.0 e OIDC.

sign-in-social-linking.png

Enterprise SSO

Primeiro, vamos descrever os conceitos de Identity Provider e Service Provider em termos simples.

  1. Identity Provider (IdP) é como o “porteiro” da sua identidade. É o sistema que guarda as suas informações de login e verifica quem você é. Pense nele como uma autoridade confiável que diz, “Sim, esta pessoa é quem diz ser.” Exemplos incluem Google Workspace, Microsoft Entra e Okta Workforce Identity.
  2. Service Provider (SP) é a “aplicação” ou “serviço” ao qual você deseja aceder uma vez que a sua identidade é verificada. É o local onde você está tentando fazer login, como uma aplicação ou website. Por exemplo, Zoom, Slack, ou as ferramentas internas da sua empresa são todos provedores de serviço.

Em termos simples, o Identity Provider prova quem você é, e o Service Provider dá-lhe acesso aos seus serviços assim que a sua identidade for confirmada.

O Enterprise SSO é utilizado em cenários mais voltados para negócios e dividido por esses dois termos explicados acima, há dois casos típicos: IdP-initiated SSO e SP-initiated SSO. Embora os termos possam soar técnicos, os cenários são na verdade bastante diretos.

IdP-initiated SSO

Pense em quando você, como empregado, adere às aplicações e recursos da sua empresa. Normalmente, o RH criará uma conta para si. Depois, você usa essa conta para fazer login numa plataforma como Okta ou Google Workspace. Uma vez conectado, será direcionado para um portal corporativo, onde pode aceder a todas as aplicações da empresa, como sistemas de folha de pagamento, ferramentas de colaboração, Workday, e mais.

idp-initiated-sso-portal.png

SP-initiated SSO

Vamos mudar de perspectiva e olhar para isso de outro ângulo. Às vezes, você precisa começar numa página de login específica de um produto. Por exemplo, se pretende usar o Zoom para uma reunião online com os seus colegas, verá uma opção para “Entrar com SSO.” Este cenário é conhecido como SP-initiated SSO.

sso-button-sign-in.png

Que problemas o Enterprise SSO resolve

O primeiro benefício do Enterprise SSO é que ele permite que as empresas gerenciem identidades da força de trabalho facilmente, flexivelmente e de forma segura.

Vamos supor que você gere uma empresa, e todos os seus funcionários precisam aceder aos produtos e serviços que você adquiriu. Como os recursos produzidos pela empresa pertencem à empresa, é necessário um sistema de identidade de propriedade corporativa. Se os funcionários utilizassem identidades pessoais para aceder aos recursos da empresa, isso criaria problemas de segurança e gestão.

Por outro lado, num cenário como o SP-initiated SSO, os funcionários acedem a múltiplas aplicações e serviços pertencentes à empresa. Quando os funcionários ingressam ou saem, o RH deve criar e excluir inúmeras contas através de todos os produtos e serviços da empresa, o que é tedioso e demorado.

O Enterprise SSO simplifica esse processo através de um sistema de identidade universal, e ferramentas como SCIM (System for Cross-domain Identity Management) e Just-in-Time provisioning tornam-no ainda mais eficiente.

Para o IdP-initiated SSO, é benéfico para os desenvolvedores de produtos que desejam estar “preparados para empresas”. Por exemplo, se você é uma startup que inicialmente foca em consumidores individuais, e mais tarde uma grande empresa deseja usar o seu produto, eles podem exigir que os funcionários façam login usando Microsoft Entra, por exemplo. Nesse caso, você precisaria integrar o Enterprise SSO no seu produto para fechar o negócio.

O que é SAML?

SAML (Security Assertion Markup Language) é um protocolo padrão aberto usado para autenticação e autorização. Juntamente com OAuth e OIDC, o SAML é amplamente utilizado em sistemas de gerenciamento de identidade, particularmente em gerenciamento de identidade da força de trabalho. Provedores de identidade comerciais como Okta e Microsoft Entra geralmente suportam o SAML como um de seus protocolos padrão.

Alguns sistemas mais antigos e provedores de login social também oferecem suporte ao SAML, portanto, ter o SAML incorporado no seu sistema pode ajudar a garantir compatibilidade com uma gama mais ampla de provedores de identidade e o crescimento futuro do ecossistema.

Quando o SAML é necessário?

O SAML é frequentemente usado em cenários de Enterprise SSO. Por exemplo, considere esta situação:

A sua equipa de vendas entra em contacto com os desenvolvedores de produtos e diz, “Temos um grande cliente, e eles exigem login com SAML. Precisamos suportar essa tecnologia.”

Para engenheiros que não estão familiarizados com SAML ou IAM (Identity and Access Management), o primeiro passo seria provavelmente pesquisar por "SAML" ou "login com SAML."

Ultimamente, o objetivo é integrar o Enterprise SSO no seu produto, tornando-o “pronto para empresas” para atender às necessidades de clientes maiores que dependem de tecnologias como SAML para autenticação segura.

Como o SAML funciona

Aqui está uma explicação simplificada dos dois tipos:

Fluxo Iniciado por SP

  1. O utilizador tenta aceder ao recurso do SP.
  2. O SP redireciona o utilizador para o IdP com um pedido de autenticação SAML.
  3. O utilizador faz login no IdP e é autenticado.
  4. O IdP gera uma asserção SAML com a identidade do utilizador e, possivelmente, dados de autorização.
  5. O IdP envia a asserção SAML de volta para o SP, normalmente através do navegador do utilizador.
  6. O SP processa a asserção, valida-a, e concede/negar acesso ao utilizador.

Fluxo Iniciado por IdP

  1. O utilizador já está logado no IdP e seleciona um serviço/recurso no portal do IdP.
  2. O IdP gera uma asserção SAML com base na sessão atual do utilizador, contendo identidade e atributos.
  3. O IdP envia a asserção diretamente ao SP, sem o pedido prévio do SP.
  4. O SP processa a asserção, valida sua integridade, e extrai a identidade e atributos do utilizador.
  5. O SP concede ou nega acesso com base na asserção.

Para ver como o SAML funciona de uma perspetiva técnica, veja Como o SAML funciona

A diferença entre SAML e SSO

As definições de SAML e SSO são muitas vezes confundidas, mas aqui está uma explicação simples:

  1. SSO é um processo de autenticação usado por aplicações e software, permitindo que os utilizadores façam login uma vez e acedam a múltiplos serviços.
  2. SAML é um protocolo técnico usado principalmente no gerenciamento de identidade empresarial para trocar dados de autenticação de forma segura.

Imagine isto: Você entra no seu escritório de manhã, e em vez de ter que fazer login em cada aplicação separadamente—seu e-mail, calendário, ferramentas de gerenciamento de projetos—você simplesmente faz login uma vez e tem acesso a tudo. Esta experiência perfeita é o SSO (Single Sign-On). É como ter uma chave universal que abre todas as portas para as suas ferramentas de trabalho.

Mas como o SSO funciona?

É aqui que o SAML (Security Assertion Markup Language) entra em ação. Pense no SAML como um mensageiro confiável entre o seu sistema de login (chamado de Identity Provider, ou IdP) e as aplicações que você deseja usar (chamadas de Service Providers, ou SPs). Quando você faz login através do SSO, o SAML envia de forma segura uma “prova” da sua identidade do IdP para a aplicação, confirmando que você é quem diz ser.

Portanto, em resumo:

  1. SSO é a experiência do utilizador: um login para aceder a múltiplas aplicações.
  2. SAML é o protocolo por trás das cenas que torna essa experiência perfeita possível, lidando de forma segura com a verificação de identidade.

Enquanto o SSO melhora a conveniência, o SAML garante que tudo permaneça seguro e conectado, permitindo-lhe aceder a tudo sem uma segunda preocupação.

O Enterprise SSO usa outros protocolos?

Sim, além do SAML, o OIDC é outro protocolo comumente usado em cenários de Enterprise SSO. Por exemplo, no conector empresarial da Logto, ele suporta tanto Microsoft Entra (OIDC) quanto Microsoft Entra (SAML).

standard connector.png

Devo usar SAML SSO?

Se você está vendendo para clientes empresariais, é importante considerar o suporte ao SAML o mais cedo possível. Mas não se concentre apenas em apoiar o protocolo SAML—pense em todo o fluxo de autenticação Enterprise SSO. Aqui estão alguns cenários-chave a considerar:

  1. Permita que seus clientes façam auto-onboarding e configurem o Enterprise SSO.
  2. Garanta que os funcionários possam juntar-se automaticamente às organizações corretas em aplicações multi-tenant (isso pode ser feito com Just-in-Time provisioning e SCIM).
  3. Implemente um fluxo de login de ponta a ponta que seja compatível com o seu processo de login voltado para o consumidor.

Implemente SAML e Enterprise SSO com Logto

A Logto fornece fluxos de Enterprise SSO end-to-end e suporta múltiplos conectores SAML. Pode ser integrado em muitos cenários comuns que você precisará. Explore todas as funcionalidades da Logto, desde o Logto Cloud até o Logto OSS, no site da Logto.