O que são fichas ao portador e tipo de token em OAuth 2?
estou a tentar implementar o proprietário de recursos e credenciais de Senha fluir do spec de OAuth 2. Estou a ter dificuldade em compreender o valor que é devolvido com uma resposta válida. Na especificação todos os exemplos mostram "token_type":"example"
mas diz que deve ser
Alguém me pode explicar isto?Token_type NECESSARIO. O tipo da ficha emitida de acordo com a descrição secção 7.1 . O valor é insensível à capitalização.
3 answers
token_type
é um parâmetro no Access Token gerar chamada para o servidor de autorização que essencialmente representa como um access_token será gerado e apresentado para chamadas de acesso a recursos.
Você fornece token_type na chamada de geração do token de Acesso para um servidor de autorização.
Se me deres Bearer
( por omissão na maioria das implementações), um access_token
é gerado e enviado de volta para você. O portador pode ser simplesmente entendido como " dar acesso ao portador deste token." Um ficha válida e sem perguntas. Por outro lado, se você escolher Mac
e sign_type
(predefinição hmac-sha-1
em a maioria de execução), o token de acesso é gerado e mantido como segredo no Gerenciador de Chaves como um atributo, e um encriptado segredo é enviado de volta como access_token
Sim, pode usar a sua própria implementação de token_type
, mas isso pode não fazer muito sentido, pois os programadores terão de seguir o seu processo em vez de implementações padrão de OAuth.
Qualquer um pode definir " token_type "como uma extensão OAuth 2.0, mas atualmente o tipo" bearer " token é o mais comum.
Https://tools.ietf.org/html/rfc6750
Basicamente é isso que o Facebook está a usar. No entanto, a sua implementação está um pouco atrasada em relação às últimas especificações.Se quiser ser mais seguro do que o Facebook (ou tão seguro como o OAuth 1.0 que tem "assinatura"), pode usar o tipo de Símbolo "mac".
No entanto, vai ser difícil uma vez que o mac spec continua a mudar rapidamente.Informação do cabeçalho MDN do Mozilla
Símbolo Ao Portador
Um símbolo de segurança com a propriedade que qualquer parte na posse do símbolo (um "portador") pode usar o símbolo de qualquer forma que qualquer outra parte na posse dele pode. O uso de um token portador não requer que um portador prove a posse de material chave criptográfica (prova de posse).
O Token ou token de actualização do Bearer é criado para si pelo servidor de autenticação. Quando um utilizador autentica o seu aplicação (cliente) o servidor de autenticação então vai e gera para o seu Token portador (token refresh) que você pode então usar para obter um token de acesso.
O token Bearer é normalmente algum tipo de valor críptico criado pelo servidor de autenticação, não é aleatório é criado com base no utilizador que lhe dá acesso e o cliente que a sua aplicação recebe acesso.