Consumindo API própria para aplicativo Web - Processo de autenticação com OAuth2

visão global

Atualmente, estou no processo de criar uma API para um aplicativo de compartilhamento de imagens que será executado na Web e em algum momento no futuro, no celular. Entendi as partes lógicas da criação da API, mas ainda estou lutando para atender aos meus próprios requisitos para a parte de autenticação.

Portanto, minha API deve estar acessível ao mundo: aqueles com acesso de convidado (pessoas que não estão logadas podem fazer upload, por exemplo) e também para usuários registrados. Então, quando umregistrado uploads de usuários, obviamente, desejo que as informações do usuário sejam enviadas junto com a solicitação e que as anexem à imagem carregada por meio de chaves estrangeiras no meu banco de dados.

Autenticação via OAuth2 - Implementação

Eu entendi que o OAuth2 é o caminho a seguir quando se trata de autenticação de API, por isso vou implementar este, mas estou realmente lutando para entender como lidar com isso.meu situação. Pensei em usar oclient credentials conceder e gerarapenas um conjunto de credenciais para o meu aplicativo Web e para que ele envie solicitações à API com seusclient secret para obter o token de acesso e permitir que os usuários façam coisas. O próprio processo de registro do usuário seria tratado com essa concessão.

Mas e quando o usuário está registrado e logado? Como manejo a autenticação agora? Isso exigiria outra concessão para assumir? Eu estava pensando em fazer algum processo de autorização durante o login do usuário, para gerar um novo token de acesso. Essa abordagem está errada?

Com o que preciso de ajuda

Preciso de sua opinião sobre como lidar com o fluxo de autenticação corretamente no meu caso. Esse processo de autenticação bidirecional pode não ser o que eu preciso, mas é o jeito que eu o entendi. Eu apreciaria muito o seu apoio.

questionAnswers(3)

yourAnswerToTheQuestion