O que é um IdP (provedor de identidade)?

Um provedor de identidade (IdP) é um serviço que armazena e verifica a identidade do usuário. Normalmente, os IdPs são serviços hospedados na nuvem e geralmente trabalham junto com provedores de single sign-on (SSO) para autenticar usuários.

Objetivos de aprendizado

Após ler este artigo, você será capaz de:

  • Defina provedor de identidade (IdP)
  • Saiba por que os IdPs são importantes
  • Saiba onde um IdP se encaixa no processo de autenticação do usuário

Copiar o link do artigo

O que é um IdP (provedor de identidade)?

Um provedor de identidade (IdP) armazena e gerencia as identidades digitais dos usuários. Pense em um IdP como sendo uma lista de convidados, mas para aplicativos digitais hospedados em nuvem em vez de um evento. Um IdP pode verificar identidades de usuários por meio de combinações de nome de usuário e senha e de outros fatores, ou pode, simplesmente, fornecer uma lista de identidades de usuários que outro provedor de serviços (como um SSO) verifica.

Os IdPs não se limitam à verificação de usuários humanos. Tecnicamente, um IdP pode autenticar qualquer entidade conectada a uma rede ou a um sistema, incluindo computadores e outros dispositivos. Qualquer entidade armazenada por um IdP é conhecida como "principal" (em vez de "usuário"). Entretanto, os IdPs são mais utilizados mais frequentemente na computação em nuvem para gerenciar as identidades dos usuários.

O que é identidade do usuário?

A identidade digital do usuário está associada a fatores quantificáveis que podem ser verificados por um sistema computadorizado. Esses fatores são chamados de "fatores de autenticação". Os três fatores de autenticação são:

  • Conhecimento: algo que você sabe, como um nome de usuário e uma senha
  • Posse: algo que você tem, como um smartphone
  • Qualidades intrínsecas: algo que você é, como sua impressão digital ou uma varredura de retina

Um IdP pode usar um ou mais desses fatores para identificar um usuário. O uso de múltiplos fatores para verificar a identidade do usuário é conhecido como autenticação multifator (MFA).

Por que os IdPs são necessários?

A identidade digital deve ser rastreada em algum lugar, especialmente para a computação em nuvem, em que a identidade do usuário determina se alguém pode ou não acessar dados sensíveis. Os serviços em nuvem precisam saber exatamente onde e como recuperar e verificar a identidade do usuário.

Registros de identidades de usuários também precisam ser armazenados de forma segura para garantir que os invasores não possam usá-los para personificar os usuários. Um provedor de identidade em nuvem normalmente tomará precauções adicionais para proteger os dados dos usuários, enquanto um serviço que não é dedicado exclusivamente ao armazenamento de identidade poderá armazená-los em um local inseguro, como um servidor aberto para a Internet.

Como os IdPs trabalham com os serviços SSO?

Um serviço de logon único, também conhecido como "SSO", é um local unificado para os usuários fazerem login em todos os seus serviços em nuvem de uma só vez. Além de ser mais conveniente para os usuários, a implementação de um SSO muitas vezes torna os logins dos usuários mais seguros.

Na sua maioria, SSOs e IdPs são separados. Um serviço SSO usa um IdP para verificar a identidade do usuário, mas na verdade não a armazena. Um provedor de SSO é mais um intermediário do que um serviço centralizado; pense nisso como uma empresa de segurança que é contratada para manter uma empresa protegida, mas que na verdade não faz parte dessa empresa.

Mesmo que estejam separados, os IdPs são uma parte essencial do processo de login do SSO. Os provedores de SSO verificam a identidade do usuário junto com o IdP quando os usuários fazem o login. Depois que isso é feito, o SSO pode verificar a identidade do usuário em qualquer quantidade de aplicativos em nuvem conectados.

No entanto, esse nem sempre é o caso. Um SSO e um IdP poderiam, teoricamente, ser uma única e mesma coisa. Mas essa configuração é muito mais aberta a ataques on-path nos quais um invasor forja uma asserção SAML* para obter acesso a um aplicativo. Por esse motivo, de modo geral o IdP e o SSO são separados.

*Uma asserção SAML é uma mensagem especializada enviada pelos serviços SSO para qualquer aplicativo em nuvem que confirma a autenticação do usuário, permitindo que o usuário acesse e utilize o aplicativo.

Como tudo isso ocorre na prática?

Suponha que Alice esteja usando seu notebook do trabalho no escritório do seu empregador. Alice precisa entrar no aplicativo de chat ao vivo da empresa para se organizar melhor com seus colegas de trabalho. Ela abre uma aba no seu navegador e carrega o aplicativo de chat. Supondo que sua empresa utilize um serviço de SSO, os seguintes passos ocorrem nos bastidores:

  • O aplicativo de bate-papo pede ao SSO a verificação de identidade da Alice.
  • O SSO vê que Alice ainda não fez o login.
  • O SSO solicita que a Alice faça o login.

Neste ponto, o navegador da Alice a redireciona para a página de login do SSO. A página tem campos para que Alice digite seu nome de usuário e senha. Como sua empresa requer autenticação de dois fatores, Alice também tem que inserir um código curto que o SSO envia automaticamente na forma de mensagens de texto para seu smartphone. Depois que isto é feito, ela clica em "Log in." Agora, acontece o seguinte:

  • O SSO envia uma solicitação SAML ao IdP utilizado pela empresa da Alice.
  • O IdP envia uma resposta SAML ao SSO confirmando a identidade de Alice.
  • O SSO envia uma asserção SAML para o aplicativo de bate-papo que a Alice originalmente desejava usar.

Alice é redirecionada de volta para seu aplicativo de bate-papo. Agora ela pode conversar com seus colegas de trabalho. O processo todo levou apenas alguns segundos.

Como o Cloudflare se integra aos provedores de identidade?

O Zero Trust da Cloudflare ajuda a manter as equipes internas em segurança por meio da integração com SSOs e IdPs para gerenciar o acesso de usuários.