Estou tentando implementar o fluxo Credenciais do proprietário e da senha do recurso da especificação do OAuth 2. Estou tendo problemas para entender o token_type
valor que é enviado de volta com uma resposta válida. Na especificação, todos os exemplos são mostrados, "token_type":"example"
mas afirma que deve ser
token_type NECESSÁRIO. O tipo do token emitido conforme descrito na Seção 7.1 . O valor não diferencia maiúsculas de minúsculas.
Alguém pode explicar isso para mim?
Qualquer pessoa pode definir "token_type" como uma extensão do OAuth 2.0, mas atualmente o tipo de token "portador" é o mais comum.
https://tools.ietf.org/html/rfc6750
Basicamente, é isso que o Facebook está usando. Sua implementação está um pouco atrasada em relação às especificações mais recentes.
Se você deseja ser mais seguro que o Facebook (ou tão seguro quanto o OAuth 1.0, que possui "assinatura"), pode usar o tipo de token "mac".
No entanto, será difícil, já que as especificações do mac ainda estão mudando rapidamente.
https://tools.ietf.org/html/draft-ietf-oauth-v2-http-mac-05
fonte
Informações do cabeçalho do Mozilla MDN
Token do portador
Um token de segurança com a propriedade de que qualquer parte em posse do token (um "portador") pode usá-lo da maneira que qualquer outra parte em posse dele possa. O uso de um token de portador não exige que o portador comprove a posse do material da chave criptográfica (prova de posse).
O token do portador ou o token de atualização são criados para você pelo servidor de autenticação. Quando um usuário autentica seu aplicativo (cliente), o servidor de autenticação acessa e gera um token de atualização (token de atualização) que você pode usar para obter um token de acesso.
O token do portador normalmente é algum tipo de valor enigmático criado pelo servidor de autenticação; não é aleatório, é criado com base no usuário que lhe dá acesso e no cliente que seu aplicativo obtém acesso.
fonte