JSON web token@05#JOSE Header

兄Die,写代码太累了?孤独寂寞冷?还没有女朋友吧?
关注微信公众号(瓠悠笑软件部落),送知识!送知识!送温暖!送工作!送女朋友!插科打诨哟!
huyouxiao.com

5. JOSE Header

对于一个 JWT 对象来说,JSON 对象的成员 JOSE Header 描述了应用于 JWT 和 JWT 的可选属性,附加属性的加密操作。依赖于这个 JWT 是 JWS 还是 JWE,相应的规则应用于 JOSE Header 的值。本规范进一步指定了当JWT 是 JWS 或者 JWT 是 JWE 的情况下 Header Parameters 的使用。

5.1. “typ” (Type) Header Parameter

由 [JWS] 和 [JWE] 定义的 Header Parameter 中的 “typ”(type) 参数用于在 JWT 应用程序中去声明这个完整JWT 的media type [IANA.MediaTypes]。这适用于 JWT 应用程序,当值不是 JWTs 时,同样可以包含一个 JWT 对象以表示应用程序的数据结构,应用程序可以使用这个值来消除不同对象可能存在的歧义。当 applications 已经知道这个对象是一个 JWT 时,applications 一般不会用它。这个参数在 JWT 的实现中将被忽略。任何对这个参数的处理将在 JWT 应用程序中进行。如果出现了, RECOMMENDED 它的值是 “JWT”, 以表名这个对象是一个 JWT。虽然 media type names 是大小写不敏感的,RECOMMENDED 它的值使用大写的 “JWT”,以和历史遗留的实现方式兼容。使用这个 Header Parameter 是 OPTIONAL。

5.2. “cty” (Content Type) Header Parameter

本规范中用 [JWS] 和 [JWE] 定义的 “cty” (content type) Header Parameter 表示JWT的传输结构信息。在正常情况下,嵌套签名或加密操作无效。NOT RECOMMENDED 使用这个 Header Parameter。当使用了嵌套签名或加密时,MUST 使用这个 Header Prameter。在这种情况下,这个值 MUST 是 “JWT”, 以表明这个 JWT 包含一个 Nested JWT。虽然 media type names 不是大小写敏感的,RECOMMENDED “JWT” 直接用大写,以和遗留的系统兼容。参考 Appendix A.2 的 Nested JWT 样例。

5.3. Replicating Claims as Header Parameters

在一些应用程序中使用加密的 JWTs,一些 claims 以未加密的形式呈现会很有用。这可能被利用,例如,应用程序在 JWT 加密前决定是否处理以及如何处理的步骤规则。

本规范允许 claims 在 JWT Claims Set 中重复出现,例如在充当 JWE 的 JWT 的 Header Parameters 中 ,根据应用程序的需要。如果出现这样的情况,应用程序接受到他们的时候 SHOULD 验证他们的值是否是一样的, 除非应用程序为处理这些 claims 定义了其他特定的处理规则。应用程序负责确保在没有加密的方式下传输是安全的 claims 才能在 JWT 的 Header Parameter 中重复出现。

本规范的章节 10.4.1 登记了 “iss” (issuer),
“sub” (subject), 和 “aud” (audience) Header Parameter names。用于提供加密的 JWTs 中的这些 claims 的未加密的复制版本,根据应用程序的需要。 如果需要的话,其他规范 MAY 注册其他的 names 作为 Header Parameter names 中的 Claim Names 。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值