Autenticação anônima

Com o IBM Cloud® App ID, você pode permitir que os usuários naveguem anonimamente no seu aplicativo por meio de um perfil de convidado. Se o usuário optar por fazer login, você poderá permitir que ele ainda acesse seus atributos anônimos anexando o perfil de convidado anônimo à sua identidade de usuário com App ID.

Entendendo a autenticação progressiva

Quando um usuário escolhe não se conectar imediatamente, ele é considerado um usuário anônimo. Por exemplo, digamos que você é um varejista on-line e quer permitir que os usuários incluam objetos no carrinho de compras sem se conectarem. No entanto, você pede que eles se conectem ao concluir a compra. Se um usuário optar por se conectar, será possível permitir que ele acesse os mesmos objetos que estavam em seus carrinhos antes de ele se conectar.

É possível usar o App ID para reunir informações sobre usuários anônimos em um perfil de usuário anônimo, que pode ser usado para ajudar a personalizar a experiência deles em seu aplicativo. Se o usuário optar por se conectar, será possível anexar os atributos de usuário que fazem parte do perfil anônimo à identidade de usuário dele que está armazenada em App ID. Os perfis anônimos são temporariamente válidos. Enquanto você desenvolve seu app, é possível configurar o tempo de vida de tokens anônimos.

Quando um usuário se conecta, ele se torna um usuário identificado. Se um perfil de usuário identificado não existir, será possível criar um novo perfil de usuário identificado. Depois que um usuário é identificado, o App ID emite novos tokens de acesso e de identidade e o token anônimo torna-se inválido. No entanto, um usuário identificado ainda pode acessar os atributos de seu perfil anônimo porque eles são acessíveis com os novos tokens de acesso e de identidade.

É possível anexar os atributos de apenas um perfil anônimo à identidade do usuário que está armazenada no App ID. Por exemplo, digamos que um usuário navega em seu aplicativo anonimamente em duas guias de navegador separadas. O usuário inclui uma camiseta no carrinho de compras na primeira aba e um shorts no carrinho na segunda aba. O App ID cria dois perfis anônimos separados para rastrear as interações do usuário com o seu aplicativo em cada guia.

Se o usuário optar por se conectar na primeira guia, ele terá acesso apenas à camiseta que incluiu no carrinho antes de se conectar. Nesse caso, o App ID anexará apenas os atributos do perfil anônimo da primeira guia à identidade do usuário. O serviço não mescla o perfil anônimo criado na segunda guia à identidade do usuário armazenado no App ID. Mas o usuário ainda pode acessar a bermuda anonimamente na segunda guia porque ela ainda está acessível com o perfil anônimo que foi criado na segunda guia. Enquanto você desenvolve seu app, é possível configurar como anexar atributos anônimos a perfis de usuários identificados.

Como se parece o fluxo de autenticação progressiva?

Na imagem a seguir, é possível ver a direção de comunicação que define o fluxo de autenticação progressiva entre o usuário, seu aplicativo, o App ID e o provedor de identidade.

O caminho para se tornar um usuário identificado quando ele começa como anônimo*Fluxo de autenticação
do usuário

  1. O usuário interage com áreas do seu app que não requerem autenticação.
  2. Seu aplicativo notifica o App ID que o usuário deseja interagir com seu app como um usuário anônimo.
  3. O App ID cria um perfil de usuário ad hoc e chama o login OAuth que emite tokens anônimos para o usuário anônimo.
  4. Usando os tokens anônimos do App ID, é possível criar, ler, atualizar e excluir os atributos armazenados no perfil de usuário anônimo.
  5. O usuário pode optar por se conectar para acessar mais recursos do seu app.
  6. Seu aplicativo notifica o App ID que o usuário deseja interagir com seu app como um usuário identificado.
  7. O App ID retorna o widget de login ao seu app.
  8. O usuário seleciona seu provedor de identidade preferido e fornece as credenciais.
  9. Seu aplicativo informa ao App ID que o usuário selecionou um provedor de identidade.
  10. O App ID autentica a chamada com o provedor de identidade.
  11. O provedor de identidade confirma se o login foi bem-sucedido.
  12. O App ID utiliza o token anônimo para localizar o perfil anônimo e anexa a identidade do usuário a ele.
  13. Após o App ID criar os novos tokens, o serviço invalida o token anônimo do usuário.
  14. O App ID retorna os novos tokens de acesso e de identidade. Os novos tokens contêm as informações públicas que são compartilhadas pelo provedor de identidade e os atributos do antigo perfil anônimo do usuário.
  15. O acesso ao seu app é concedido ao usuário.