Segurança

SAML vs. OAUTH

SAML vs. OAUTH
SAML e OAUTH são padrões técnicos para autorizar usuários. Esses padrões são usados ​​por desenvolvedores de aplicativos da Web, profissionais de segurança e administradores de sistema que buscam melhorar seu serviço de gerenciamento de identidade e aprimorar métodos para que os clientes possam acessar recursos com um conjunto de credenciais. Nos casos em que o acesso a um aplicativo de um portal é necessário, há uma necessidade de uma fonte de identidade centralizada ou Enterprise Single Sign On. Nesses casos, SAML é preferível. Nos casos em que o acesso temporário a recursos como contas ou arquivos é necessário, o OAUTH é considerado a melhor escolha. Em casos de uso de dispositivos móveis, o OAUTH é usado principalmente. Tanto SAML (Security Assertion and Markup Language) e OAUTH (Open Authorization) são usados ​​para logon único na web, oferecendo a opção de logon único para vários aplicativos da web.

SAML

SAML é usado para permitir que os provedores de SSO de aplicativos da web transfiram e movam credenciais entre o provedor de identidade (IDP), que mantém as credenciais, e o provedor de serviços (SP), que é o recurso que precisa dessas credenciais. SAML é uma linguagem de protocolo de autenticação e autorização padrão usada principalmente para executar o gerenciamento de federação e identidade, junto com o gerenciamento de logon único. Dentro SAML, Documentos de metadados XML são usados ​​como um token para o envio da identidade do cliente. O processo de autenticação e autorização de SAML é o seguinte:

  1. O usuário solicita o login no serviço por meio do navegador.
  2. O serviço informa ao navegador que está se autenticando em um provedor de identidade (IdP) específico registrado no serviço.
  3. O navegador retransmite a solicitação de autenticação para os Provedores de Identidade registrados para login e autenticação.
  4. Após a verificação de credencial / autenticação bem-sucedida, o IdP gera um documento de asserção baseado em XML que verifica a identidade do usuário e o retransmite para o navegador.
  5. O navegador retransmite a afirmação ao provedor de serviços.
  6. O Provedor de Serviços (SP) aceita a declaração de entrada e permite que o usuário acesse o serviço fazendo login.

Agora, vejamos um exemplo da vida real. Suponha que um usuário clique no Conecte-se opção no serviço de compartilhamento de imagens no site abc.com. Para autenticar o usuário, uma solicitação de autenticação SAML criptografada é feita por abc.com. A solicitação será enviada do site diretamente para o servidor de autorização (IdP). Aqui, o provedor de serviços redirecionará o usuário ao IdP para autorização. O IdP verificará a solicitação de autenticação SAML recebida e, se a solicitação for válida, apresentará ao usuário um formulário de login para inserir as credenciais. Depois que o usuário inserir as credenciais, o IdP gerará uma asserção SAML ou token SAML contendo os dados e a identidade do usuário e o enviará ao Provedor de Serviços. O provedor de serviços (SP) verifica a asserção SAML e extrai os dados e a identidade do usuário, atribui as permissões corretas ao usuário e faz o login do usuário no serviço.

Os desenvolvedores de aplicativos da Web podem usar plug-ins SAML para garantir que o aplicativo e o recurso sigam as práticas de logon único necessárias. Isso proporcionará uma melhor experiência de login do usuário e práticas de segurança mais eficazes que alavancam uma estratégia de identidade comum. Com o SAML instalado, apenas usuários com a identidade correta e o token de asserção podem acessar o recurso.

OAUTH

OAUTH é usado quando há necessidade de passar a autorização de um serviço para outro sem compartilhar as credenciais reais, como a senha e o nome de usuário. Usando OAUTH, os usuários podem entrar em um único serviço, acessar os recursos de outros serviços e realizar ações no serviço. OAUTH é o melhor método usado para passar autorização de uma plataforma Single Sign On para outro serviço ou plataforma, ou entre quaisquer dois aplicativos da web. O OAUTH o fluxo de trabalho é o seguinte:

  1. O usuário clica no botão Login de um serviço de compartilhamento de recursos.
  2. O servidor de recursos mostra ao usuário uma concessão de autorização e redireciona o usuário para o servidor de autorização.
  3. O usuário solicita um token de acesso do servidor de autorização usando o código de concessão de autorização.
  4. Se o código for válido após o login no servidor de autorização, o usuário obterá um token de acesso que pode ser usado para recuperar ou acessar um recurso protegido do servidor de recursos.
  5. Ao receber uma solicitação de um recurso protegido com um token de concessão de acesso, a validade do token de acesso é verificada pelo servidor de recursos com a ajuda do servidor de autorização.
  6. Se o token for válido e passar em todas as verificações, o recurso protegido é concedido pelo servidor de recursos.

Um uso comum do OAUTH é permitir que um aplicativo da web acesse uma plataforma de mídia social ou outra conta online. As contas de usuário do Google podem ser usadas com muitos aplicativos de consumo por diversos motivos, como blogs, jogos online, login em contas de mídia social e leitura de artigos em sites de notícias. Nestes casos, o OAUTH trabalha em segundo plano, para que essas entidades externas possam ser vinculadas e possam acessar os dados necessários.

OAUTH é uma necessidade, pois deve haver uma maneira de enviar informações de autorização entre aplicativos diferentes sem compartilhar ou expor as credenciais do usuário. OAUTH também é usado em empresas. Por exemplo, suponha que um usuário precise acessar o sistema de logon único de uma empresa com seu nome de usuário e senha. O SSO dá a ele acesso a todos os recursos necessários, passando tokens de autorização OAUTH para esses aplicativos ou recursos.

Conclusão

OAUTH e SAML são muito importantes do ponto de vista de um desenvolvedor de aplicativos da web ou administrador de sistema, embora ambos sejam ferramentas muito diferentes com funções diferentes. OAUTH é o protocolo de autorização de acesso, enquanto SAML é um local secundário que analisa a entrada e fornece autorização ao usuário.

Instale o último jogo de estratégia OpenRA no Ubuntu Linux
OpenRA é um motor de jogo de estratégia em tempo real Libre / Free que recria os primeiros jogos Westwood como o clássico Command & Conquer: Red Alert...
Instale o emulador Dolphin mais recente para Gamecube e Wii no Linux
O Dolphin Emulator permite que você jogue seus jogos de Gamecube e Wii escolhidos em computadores pessoais Linux (PC). Sendo um emulador de jogo disp...
Como usar o GameConqueror Cheat Engine no Linux
O artigo cobre um guia sobre como usar o mecanismo de cheat GameConqueror no Linux. Muitos usuários que jogam no Windows costumam usar o aplicativo “C...