Qual é a diferença entre SAML e OAuth? É uma questão bastante comum para administradores de sistemas, profissionais de segurança e criadores de aplicações que procuram melhorar a sua postura de gestão de identidade e simplificar a forma como os utilizadores acedem aos recursos com um conjunto comum de credenciais. medida que as organizações ponderam os dois conceitos, seria útil ter um guia para diferenciar entre os dois. Aqui está o seu guia para contrastar SAML vs. OAuth.
O que é SAML?
A Security Assertion Markup Language (SAML) é um protocolo padrão de autenticação (e ocasionalmente autorização) que é mais frequentemente utilizado pelos fornecedores de aplicações web single sign-on (SSO) para transmitir credenciais entre um fornecedor de identidade (IdP) que contém as credenciais para verificar um utilizador e um fornecedor de serviços (SP) que é o recurso que requer autenticação. O SAML utiliza documentos de metadados em linguagem de marcação extensível (XML) como seus símbolos para uma afirmação da identidade de um utilizador. O processo de autenticação e autorização SAML (AuthN e AuthZ) é o seguinte.
Said de outra forma, usando SAML, os programadores podem utilizar plugins SAML para assegurar que a sua aplicação ou recurso segue práticas de login único desejáveis para simplificar a experiência de login do seu utilizador e assegurar que as práticas de segurança são estabelecidas para alavancar uma estratégia de identidade comum. Desta forma, apenas uma identidade com as credenciais/asserção adequadas pode aceder a uma aplicação. Além disso, o SAML pode ser utilizado para controlar o que essa identidade pode aceder numa aplicação.
O que é OAuth?
OAuth, ou Autenticação Aberta, é também um protocolo AuthN/AuthZ utilizado para necessidades de autenticação segura. Tal como o SAML, OAuth requer um fornecedor de identidade como fonte de verdade para autenticação do acesso do utilizador. OAuth utiliza a sua própria documentação XML para os tokens de autenticação, mas também pode utilizar JavaScript Object Notation (JSON) para os tokens. O processo OAuth é levado a cabo de forma semelhante ao processo SAML detalhado acima.
OAuth é mais adaptado ao scoping de acesso do que o SAML. A delimitação do âmbito de acesso é a prática de permitir apenas o mínimo de acesso dentro do recurso/apoio que uma identidade requer, uma vez verificada. Por exemplo, OAuth é frequentemente utilizado quando uma aplicação web solicita o acesso ao microfone e à câmara do seu sistema. Isto torna o OAuth (especificamente OAuth2) ideal para aplicações web/móvel, especialmente (Leia mais…)