JSON web token@06#Example Unsecured JWT

来源:互联网 发布:mac不要开机密码 编辑:程序博客网 时间:2024/06/18 11:08

6. Unsecured JWTs

为了支持用例:JWT content 在一种方法下是安全的,而不是用 签名 和/或 加密的方法包含在 JWT (例如 JWT 包含的数据结构中包含一个签名),JWTs MAY 同样以 singnature 或者 encryption 之外的方式创建。 一个 Unsecured JWT 是一个JWS使用了 “alg” Header 参数,它的值是 “none” 或者它的 JWS Signature 值是空串, 如同 JWA 规范里面定义的那样; 他是一个不安全的 JWS,用 JWT Claims Set 作为它的 JWS Payload。

6.1. Example Unsecured JWT

下面的例子 JOSE Header 声明了这个加密的对象是一个 Unsecured JWT:

{"alg":"none"}

用 Base64url 加密这个 UTF-8 编码的八进制形式的 JOSE Header 产生出这个加密的 JOSE Header 值:

eyJhbGciOiJub25lIn0

下面是 JWT Claims Set 的样例:

{"iss":"joe","exp":1300819380,"http://example.com/is_root":true}

用 Base64url 加密这个 UTF-8 编码的八进制的 JWT Claims Set 产生出加密的 JWS Payload (换行符仅仅是为了排版需要):

eyJpc3MiOiJqb2UiLA0KICJleHAiOjEzMDA4MTkzODAsDQogImh0dHA6Ly9leGFtcGxlLmNvbS9pc19yb290Ijp0cnVlfQ

这个加密的 JWS Signature 是一个空串。用英文逗号(’.’)将各个部分按顺序链接后产生出这个完整的 JWT (换行符仅仅是为了排版需要):

eyJhbGciOiJub25lIn0.eyJpc3MiOiJqb2UiLA0KICJleHAiOjEzMDA4MTkzODAsDQogImh0dHA6Ly9leGFtcGxlLmNvbS9pc19yb290Ijp0cnVlfQ.
0 0