From c10bdc0029b55319dbd637009006ac4eec27a749 Mon Sep 17 00:00:00 2001 From: yutent Date: Thu, 2 Nov 2023 18:12:16 +0800 Subject: [PATCH] Update Jwt --- Jwt.md | 23 +++++++++-------------- 1 file changed, 9 insertions(+), 14 deletions(-) diff --git a/Jwt.md b/Jwt.md index 0884a52..42dfdb8 100644 --- a/Jwt.md +++ b/Jwt.md @@ -1,4 +1,4 @@ -## Json Web Token +# Json Web Token > JWT的作用, 跟Session类似。区别是JWT对cookie没有依赖, 对跨域操作, 多域名项目更有优势。 >> JWT的数据,是明文(仅仅做了base64转码)存于token中的, 所以请勿在JWT中储存敏感数据。这些敏感数据, 请使用redis, memcache等储存。 @@ -10,31 +10,26 @@ ```js jwt: { - // jwt 开关 - enabled: false, ttl: 3600 * 24 * 7, level: 0, // 校验级别, 0: 不校验客户端, 2: ua, 4: ip, 6: ua + ip secret: 'it_is_secret_key' // jwt密钥, 使用时请修改 } ``` -+ enabled `` 这个没啥可说的了, 就是一开关。 + ttl `` 有效期, 单位秒, 默认7天, 客户端一直有请求时, 会实时更新有效期。 + level `` 安全校验等级, 默认不校验, 即只要拿到ssid, 无论是谁请求都是合法的; 可根据业务需要, 设置相应的安全校验, 如, useragent、 ip。 -+ secret `` JWT的加密密钥, 正式使用时, 必须设为私有的密钥, 且不要外泄, 否则token就有可能被伪造。 ++ secret `` 【必须】JWT的加密密钥, 正式使用时, 必须设为私有的密钥, 且不要外泄, 否则token就有可能被伪造。 -框架默认已经安装了会话拓展包, 但是并未启用; 且在[控制器基类](https://github.com/bytedo/gmf.core/wiki/Controller)中封装了一个操作jwt的方法, 一般情况下, 只需要关心那个方法的使用即可。 +框架默认已经安装了会话拓展包, 但是并未启用; 且在[控制器基类](/wiki/Controller)中封装了一个操作jwt的方法, 一般情况下, 只需要关心那个方法的使用即可。 -如果有兴趣jwt封装实现的, 可以继续往下看。 +```js +import { createJwt, JwtModule } from '@gm5/jwt' -未完待续... +app + .install(JwtModule, { secret: 'xxxxxxxx-xxxx-xxxxxxxx' }) + .use(createJwt()) - ----- - -上一节: [⟪会话Session⟫](https://github.com/bytedo/gmf.core/wiki/Session) - -下一节: [⟪进阶⟫](https://github.com/bytedo/gmf.core/wiki/Advanced) \ No newline at end of file +``` \ No newline at end of file