我在REST中使用JWT Bearer身份验证方案。为了在成功的身份验证后将jwt令牌返回给客户端,我目前正在使用主体中的访问令牌响应,如https://www.rfc-editor.org/rfc/rfc6750#page-10中所述。
{
"access_token":"mF_9.B5f-4.1JqM",
"token_type":"Bearer",
"expires_in":3600,
"refresh_token":"tGzv3JOkF0XG5Qx2TlKWIA"
}但是也需要在其他HTTP请求中返回令牌,比如已经存在主体的注册。因此,正在考虑使用“身份验证-信息”头来实现它。但是无记名计划没有在任何地方指定“身份验证-信息”报头。我是否应该使用身份验证-信息头来返回jwt令牌?
不使用OAuth 2.0,只使用JWT。
发布于 2017-11-04 12:15:43
对于JWT2.0,您所拥有的可能是正确的,但是对于普通的OAuth,它要简单得多。当您使用普通的自制JWT时,客户端将把令牌放在一个称为授权的HTTP报头上。标题的值如下所示
Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWV9.TJVA95OrM7E2cBab30RMHrHDcEfxjoYZgeFONFh7HgQ标头字段也可以称为其他内容。服务器和客户端必须就名称达成一致。授权只是最常见的名称。
服务器通常通过响应登录端点上的POST请求来发出令牌。登录成功时,令牌可以是响应体的一部分。客户端将存储令牌,并使用上面的标头发送每个请求的令牌。您可以忘记与访问令牌和刷新令牌相关的一切。当使用“普通”基本JWT时,您将只有一个令牌,即Bearer之后的值。
当用户注册时,我看不出有什么理由发出令牌。他们可以在注册后登录的时候拿到它。
如果您只是实现普通身份验证,我建议您在RFCs上为这阅读OAuth。
https://stackoverflow.com/questions/47091002
复制相似问题