JustAuth v1.9.4 发布,建议升级到最新版

栏目: 软件资讯 · 发布时间: 6年前

内容简介:JustAuth更新内容 JustAuth今天更新了两个版本,v1.9.3算是一个过渡版本,不过仍然存在一些问题,建议直接升级到v1.9.4。 v1.9.3 AuthConfig类中去掉state参数 删除AuthState类 增加authorize(String)方法,并且使...

JustAuth更新内容

JustAuth今天更新了两个版本,v1.9.3算是一个过渡版本,不过仍然存在一些问题,建议直接升级到v1.9.4

v1.9.3

  1. AuthConfig类中去掉state参数
  2. 删除AuthState
  3. 增加authorize(String)方法,并且使用@Deprecated标记authorize()方法
  4. IpUtils.getIp改名为IpUtils.getLocalIp
  5. 规范注释
  6. 增加State缓存,AuthCallback中增加默认的校验state的方法
  7. 增加默认的state生成方法,参考AuthStateUtils.javaUuidUtils.java
  8. 升级hutool-http版本到v4.6.0
  9. 修复其他一些问题

v1.9.3版本前的AuthState类有个问题就是:A授权过程中,B也去授权相同的平台,因为AuthState内部获取ip时获取的是本机ip,所以最终A和B在AuthState中生成的key就会一样,也因此造成A的数据被B覆盖掉的情况。

1.9.3版本中,将AuthState类删除,同时去掉了AuthConfig类中的state参数。因为对于OAuth来说,state主要的作用就是为了保持会话的完整性,防止CSRF攻击,所以这个参数在JustAuth中实际应该是跟着request走,而不应该耦合到config中。同时在该版本中,新增了authorize(String)方法,支持调用者手动去生成state,当然, 原来的authorize()方法一样可以用,但不保证后续版本不会被删除,所以还是建议大家使用authorize(String)方法获取授权地址。

该版本还增加了state缓存,不过需要注意的一点就是:JustAuth默认保存state的有效期为3分钟,3分钟内未使用则会自动清除掉。针对这一点,在代码中也给出了注释:

/**
 * 默认的缓存实现
 *
 * @author yadong.zhang (yadong.zhang0415(a)gmail.com)
 * @since 1.9.3
 */
public class AuthDefaultCache implements AuthCache {

    /**
     * 默认缓存过期时间:3分钟
     * 鉴于授权过程中,根据个人的操作习惯,或者授权平台的不同(google等),每个授权流程的耗时也有差异,不过单个授权流程一般不会太长
     * 本缓存 工具 默认的过期时间设置为3分钟,即程序默认认为3分钟内的授权有效,超过3分钟则默认失效,失效后删除
     */
    private static final long DEF_TIMEOUT = 3 * 60 * 1000;
	
	// ...
}

这个意思就是,JustAuth默认只能受理3分钟内的请求信息,如果一次授权的流程,从authorizecallbacklogin)之间,超过3分钟,则默认当前授权流程无效。

在升级hutoolv4.6.0版本时,遇到了一些问题:在码云上生成JavaDoc时报错,经过和hutool作者沟通,他建议将hutool升级到最新版本v4.6.1

v1.9.4

  1. 升级hutool-http版本到v4.6.1
  2. 去除AuthCallback中增加的默认的校验state的方法,挪到AuthDefaultRequest中做统一处理
  3. alipay-sdk-java依赖改为provided,如果需要使用支付宝登录,需要使用方手动引入相关依赖,具体操作方式,见项目WIKI;
  4. 规范注释

v1.9.4版本主要就是修改了一下依赖,其中比较大的改动就是将alipay-sdk-java依赖置为了provided,毕竟在以前的版本中这算是一个传递性的第三方强依赖,但并不是每个人都需要用到Alipay的授权登陆,所以在1.9.4版本中,将这一依赖置为provided。如果你需要用到Alipay的授权登陆,那么你还需要添加以下依赖:

<!-- JustAuth1.9.4版本后,如果需要使用支付宝登录,需要单独引用该依赖 -->
<dependency>
	<groupId>com.alipay.sdk</groupId>
	<artifactId>alipay-sdk-java</artifactId>
	<version>3.7.4.ALL</version>
</dependency>

关于JustAuth

JustAuth,史上最全的整合第三方登录的开源库。目前已支持Github、Gitee、微博、钉钉、百度、Coding、腾讯云开发者平台、OSChina、支付宝、QQ、微信、淘宝、Google、Facebook、抖音、领英、小米、微软、今日头条、Teambition、StackOverflow、Pinterest和人人等第三方平台的授权登录。 Login, so easy!

JustAuth,如你所见,它仅仅是一个第三方授权登录工具类库,它可以让我们脱离繁琐的第三方登录SDK,让登录变得So easy!

项目开源地址:gitee | github

JustAuth的特点

废话不多说,就俩字:

  1. :已集成十多家第三方平台(国内外常用的基本都已包含),后续依然还有扩展计划!
  2. :API就是奔着最简单去设计的(见后面快速开始),尽量让您用起来没有障碍感!

相关文章

其他开源作品

  • blog-hunter,一款简单好用并且支持多个平台的博客爬取工具
  • OneBlog,一个简洁美观、功能强大并且自适应的 Java 博客
  • JustAuth,史上最全的整合第三方登录的开源库。目前已支持Github、Gitee、微博、钉钉、百度、Coding、腾讯云开发者平台、OSChina、支付宝、QQ、微信、淘宝、Google、Facebook、抖音、领英、小米、微软、今日头条、Teambition、StackOverflow、Pinterest和人人等第三方平台的授权登录。 Login, so easy!
  • spingboot-shiro,Springboot + shiro权限管理。这或许是流程最详细、代码最干净、配置最简单的shiro上手项目了。
  • braum-spring-boot-starter,Braum可以很方便的帮助开发人员过滤、识别恶意请求

以上所述就是小编给大家介绍的《JustAuth v1.9.4 发布,建议升级到最新版》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Head First JavaScript Programming

Head First JavaScript Programming

Eric T. Freeman、Elisabeth Robson / O'Reilly Media / 2014-4-10 / USD 49.99

This brain-friendly guide teaches you everything from JavaScript language fundamentals to advanced topics, including objects, functions, and the browser’s document object model. You won’t just be read......一起来看看 《Head First JavaScript Programming》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具