Um mergulho na autenticação SAML
Entender o SAML no single sign-on com o Salesforce
Na área da autenticação, o SAML (Security Assertion Markup Language) tem um papel-chave para garantir um acesso fluido entre aplicações. Vamos mergulhar no SAML, entender a sua importância no single sign-on (SSO) e explorar a sua implementação com o Salesforce.
O contexto
Imagine um cenário com duas orgs do Salesforce: um fornecedor de identidade (IDP) e um fornecedor de serviços. O fornecedor de serviços tem os dados a que quer aceder, mas, em vez de usar várias credenciais, quer fazê-lo com um único conjunto de dados de início de sessão. A ideia parece simples, mas o mecanismo por trás pode ser complexo.

Termos-chave do SAML
Acesso do utilizador: quando um utilizador tenta chegar a um recurso protegido no fornecedor de serviços antes de se autenticar.
Redirecionamento: se o utilizador não estiver autenticado, o fornecedor de serviços redireciona-o para o fornecedor de identidade com um pedido SAML. Se necessário, um relay state (o URL que o utilizador queria visitar) pode ser enviado em conjunto.
Autenticação no IDP: o fornecedor de identidade verifica a identidade do utilizador, normalmente por nome de utilizador, palavra-passe ou autenticação multifator.
Asserção SAML: após a autenticação, o IDP envia uma asserção SAML ao fornecedor de serviços.
Confiança do fornecedor de serviços: o fornecedor de serviços valida a asserção SAML, extrai as informações do utilizador e concede o acesso. Se um relay state foi enviado antes, o fornecedor de serviços navega até esse URL.

Benefícios do single sign-on
Acesso simplificado: os utilizadores só precisam de um conjunto de credenciais para aceder a vários serviços.
Segurança: o SAML usa assinaturas digitais para garantir a integridade dos dados e evitar adulterações.
Interoperabilidade: por ser um protocolo padrão, o SAML liga-se a vários IDPs e fornecedores de serviços com tecnologias diferentes.
Indo mais fundo: examinar os fluxos SAML
Pedido SAML: enviado pelo fornecedor de serviços ao IDP, pedindo-lhe que autentique um utilizador.

Resposta SAML: uma mensagem do IDP após a autenticação, com os detalhes do utilizador.

Asserções: declarações do IDP sobre o utilizador, com atributos como nome de utilizador ou e-mail.
Assinaturas digitais: usadas para verificar as asserções e garantir que não foram alteradas de forma ilícita.
Relay state: um URL de deep link que garante que o utilizador volta ao destino pretendido depois da autenticação.
Quando um utilizador inicia o acesso, é enviado um pedido SAML ao IDP, que, após a verificação, devolve uma asserção SAML. Quando o fornecedor de serviços valida essa asserção, o utilizador recebe o acesso pretendido.

Com ferramentas como o SAML Tracer para navegadores, é possível visualizar este fluxo. Assim vê com transparência o processo de autenticação, do pedido inicial ao redirecionamento final.
Medidas de segurança nas asserções SAML
Para enfrentar possíveis ameaças:
Carimbos de data e hora evitam ataques de repetição, garantindo que a asserção SAML só é válida durante um curto intervalo.
Assinaturas digitais garantem que os dados não foram adulterados durante a troca.
Além disso, as asserções podem conter atributos do utilizador, como endereço de e-mail ou tipo de utilizador, permitindo controlos de acesso mais detalhados no fornecedor de serviços.
Conclusão
No fundo, o SAML é um protocolo baseado em XML que contém os elementos-chave da autenticação. Pode parecer magia, mas é resultado de uma tecnologia bem pensada para impedir ataques como o «man-in-the-middle» ou a repetição.
A sua capacidade de integrar vários fornecedores de serviços com IDPs de tecnologias diferentes faz dele uma pedra angular da autenticação digital.
Fique atento
Comece a sua jornada no Salesforce Identity com confiança! Para mais ideias e dicas, acompanhe aqui em www.SteveTechArc.com e no canal do YouTube @SteveTechArc (opens in a new tab). Subscreva e aprofunde o seu entendimento do Salesforce Identity.
A ajudar a mudar o mundo, partilhando conhecimento sobre integração com outros arquitetos e com quem está na jornada para se tornar um!
Transcrição feita com a ajuda de IA
STA 3.6