Springsecurity Oauth2如何设置token的过期时间

如果用户在指定的时间内有操作就给token延长有限期,否则到期后自动过期,如何设置token的过期时间,本文就来详细的介绍一下

1.设置token的过期时间

如果我们是从数据库来读取客户端信息的话 我们只需要在数据库设置token的过期时间

1.1 oauth_client_details表每个列的作用

client_id:客户端的id

用于唯一标识每一个客户端(client);注册时必须填写(也可以服务端自动生成),这个字段是必须的,实际应用也有叫app_key

resource_ids:资源服务器的id,多个用,(逗号)隔开

客户端能访问的资源id集合,注册客户端时,根据实际需要可选择资源id,也可以根据不同的额注册流程,赋予对应的额资源id

client_secret:客户端的秘钥

注册填写或者服务端自动生成,实际应用也有叫app_secret, 必须要有前缀代表加密方式

authorized_grant_types:认证的方式

可选值 授权码模式:authorization_code,密码模式:password,刷新token: refresh_token, 隐式模式: implicit: 客户端模式: client_credentials。支持多个用逗号分隔

web_server_redirect_uri:授权码模式认证成功跳转的地址

客户端重定向uri,authorization_code和implicit需要该值进行校验,注册时填写,

authorities:指定用户的权限范围,如果授权的过程需要用户登陆,该字段不生效,implicit和client_credentials需要access_token_validity:token的过期时间

设置access_token的有效时间(秒),认(60 * 60 * 12,12小时)

refresh_token_validity:刷新token的过期时间

设置refresh_token有效期(秒),认(60 *60 * 24 * 30, 30天)

additional_information:值必须是json格式

autoapprove:认false,适用于authorization_code模式,设置用户是否自动approval操作,设置true跳过用户确认授权操作页面,直接跳到redirect_uri

相关文章

HashMap是Java中最常用的集合类框架,也是Java语言中非常典型...
在EffectiveJava中的第 36条中建议 用 EnumSet 替代位字段,...
介绍 注解是JDK1.5版本开始引入的一个特性,用于对代码进行说...
介绍 LinkedList同时实现了List接口和Deque接口,也就是说它...
介绍 TreeSet和TreeMap在Java里有着相同的实现,前者仅仅是对...
HashMap为什么线程不安全 put的不安全 由于多线程对HashMap进...