KeyCloak for Authorization

上一集

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

  • 修改access_token有效时间
  • image.png

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

    image.png

  • 修改refresh_token有效时间
  • image.png

    KeyCloak for Authorization-每日运维
    3. 修改refresh_token续签次数

    image.png

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

    image.png

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

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

    image.png