E o que significa que eles estão em um "formato proprietário"? Estou lendo sobre os tokens de atualização JWT e eles são opacos, mas não entendo o termo.
E o que significa que eles estão em um "formato proprietário"? Estou lendo sobre os tokens de atualização JWT e eles são opacos, mas não entendo o termo.
Respostas:
Um JWT possui conteúdo legível, como você pode ver, por exemplo, em https://jwt.io/ . Todos podem decodificar o token e ler as informações nele contidas. O formato está documentado na RFC 7519 .
Um token opaco, por outro lado, tem um formato que não se destina a ser lido por você. Somente o emissor conhece o formato.
O significado da palavra já dá uma dica:
opaco / ə (ʊ) ˈpeɪk / adjetivo
incapaz de ser visto através; não é transparente.
Aqui está uma citação de https://auth0.com/docs/tokens :
Tokens opacos: tokens em um formato proprietário que normalmente contêm algum identificador de informações no armazenamento persistente de um servidor. Para validar um token opaco, o destinatário do token precisa chamar o servidor que o emitiu.
Um "token de atualização JWT opaco" é uma contradição conforme a definição acima. O que realmente significa aqui é que, em algumas estruturas JWT, apenas o token de autenticação é um JWT, mas como token de atualização, eles usam tokens opacos.
opaque tokené descrito como uma sequência aleatória que serve apenas como ponteiro para as informações armazenadas no servidor. Esse tipo de token é descrito aqui como reference tokenconsiderando que um opaque tokenpode realmente conter informações criptografadas (legíveis apenas para o emissor original). Portanto, existem definições ligeiramente diferentes das quais devemos estar cientes.
Aqui, o termo "opaco" significa que a string (que serve como token) é como uma referência (em OOPs), ou ponteiro (em C) ou chaves estrangeiras (em DBs relacionais). Você precisa de um conteúdo externo para resolvê-lo.
Simples versus Composto:
A cadeia é uma cadeia "simples", em oposição ao JWS, onde é "composta"; Tem peças "dentro" dele.
Dentro versus Fora:
Você pode extrair uma carga útil (com reivindicações, etc.) dela sem se referir a um servidor ou armazenamento externo, "fora" dessa sequência.
Como um token opaco é uma sequência simples, é apenas uma referência; portanto, naturalmente, seu formato é inteiramente arbitrariamente determinado pelo servidor que o emite (daí o termo "formato proprietário"). A sequência de tokens é determinada no momento da criação do conteúdo subjacente (referido), ou seja, quando é emparelhado (associado) ao conteúdo a que esse token (como referência ou chave estrangeira) se refere.