为了账号安全,请及时绑定邮箱和手机立即绑定

JWT的最佳HTTP授权标头类型

JWT的最佳HTTP授权标头类型

慕慕森 2019-11-22 13:05:50
我想知道JWT令牌最合适的AuthorizationHTTP标头类型是什么。可能是最受欢迎的类型之一Basic。例如:Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==它处理两个参数,例如登录名和密码。因此,它与JWT令牌无关。另外,例如,我听说了Bearer类型:Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWV9.TJVA95OrM7E2cBab30RMHrHDcEfxjoYZgeFONFh7HgQ但是,我不知道它的含义。与熊有关吗?在HTTP Authorization标头中是否有使用JWT令牌的特定方法?我们应该使用Bearer还是应该简化并仅使用:Authorization: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWV9.TJVA95OrM7E2cBab30RMHrHDcEfxjoYZgeFONFh7HgQ谢谢。编辑:或者,也许只是一个JWTHTTP标头:JWT: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWV9.TJVA95OrM7E2cBab30RMHrHDcEfxjoYZgeFONFh7HgQ
查看完整描述

2 回答

?
富国沪深

TA贡献1790条经验 获得超9个赞

简短答案

该Bearer认证方案是你在找什么。


长答案

与熊有关吗?


Errr ... No :)


根据牛津字典,这是不记名的定义:


持票人 / ˈbɛːrə /

名词


携带或持有某物的人或物


出示支票或其他命令付款的人。


第一个定义包括以下同义词:Messenger,Agent,传送带,Emissary,Carrier,Provider。


这是根据RFC 6750的承载令牌的定义:


1.2。术语


不记名令牌


具有该令牌的任何一方(“承载者”)可以以任何其他任何拥有它的方可以使用的方式使用该令牌的属性的安全令牌。使用承载令牌不需要承载者证明拥有加密密钥材料(资产证明)。


该Bearer认证方案登记在IANA和最初定义的RFC 6750的的OAuth 2.0授权框架,但没有阻止你使用Bearer的访问令牌方案在不使用OAuth 2.0的应用程序。


尽可能遵守标准,并且不要创建自己的身份验证方案。


必须Authorization使用Bearer身份验证方案在请求标头中发送访问令牌:


2.1。授权请求标头字段


当在AuthorizationHTTP / 1.1定义的请求标头字段中发送访问令牌时,客户端使用Bearer身份验证方案来传输访问令牌。


例如:


GET /resource HTTP/1.1

Host: server.example.com

Authorization: Bearer mF_9.B5f-4.1JqM

[...]


客户端应使用Authorization带有BearerHTTP授权方案的请求标头字段,使用承载令牌发出经过身份验证的请求。[...]


如果令牌无效或丢失,则该Bearer方案应包含在WWW-Authenticate响应头中:


3. WWW身份验证响应头字段


如果受保护的资源请求不包括身份验证凭据或不包含启用对受保护资源的访问的访问令牌,则资源服务器必须包含HTTP WWW-Authenticate响应头字段。


本规范定义的所有挑战都必须使用auth-scheme值Bearer。此方案必须跟随一个或多个auth-param值。[...]。


例如,响应未经身份验证的受保护资源请求:


HTTP/1.1 401 Unauthorized

WWW-Authenticate: Bearer realm="example"

并使用过期的访问令牌响应身份验证尝试的受保护资源请求:


HTTP/1.1 401 Unauthorized

WWW-Authenticate: Bearer realm="example",

                         error="invalid_token",

                         error_description="The access token expired"


查看完整回答
反对 回复 2019-11-22
  • 2 回答
  • 0 关注
  • 831 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信