KeyCloak for Authorization

334 阅读1分钟

上一集

KeyCloak for Vue - 掘金 (juejin.cn)

开启Authorization

新建一个client,并开启Authorization功能

image.png

获取密钥:knPrh4pUghrJ64QnK36LJbM3NyK4Y3Bj

image.png

需要在请求头中捎带token信息,没有则会报401未授权

image.png

请求携带token

密码 + 密钥方式请求 http://localhost:8080/realms/Demo/protocol/openid-connect/token

image.png

返回的access_token就是用户的个人信息,使用JWT解码可查看解密信息:

在线解码地址: JSON Web Tokens - jwt.io

image.png

返回结果中的expires_inrefresh_expires_in分别代表access_token的有效时间和refresh_token的有效时间;

image.png

若access_token过期(过了300s),可使用refresh_token再次请求

image.png

设置修改

配置信息可在tokens页面修改

image.png

  1. 修改access_token有效时间

image.png

有效时间由300秒修改为1200秒(20分钟)

image.png

  1. 修改refresh_token有效时间

image.png

image.png 3. 修改refresh_token续签次数

image.png

超出规定(可使用2次,可使用次数比填写的值多一次,也就是在使用token的第3次报错)次数后将会报invalid_grant

image.png

  1. 设置记住我有效时间:指定期限内不需要重新登录,token会在cookie中保留

image.png

通常SSO Session Idle时间与记住我时间一致,不然即使保存了,过了refresh_expires_in的有效时间,存储的将会是过期数据

image.png