新网创想网站建设,新征程启航

为企业提供网站建设、域名注册、服务器等服务

使用springcloudoauth2实现用户认证登录-创新互联

这篇文章运用简单易懂的例子给大家介绍使用spring cloud oauth2 实现用户认证登录,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

创新互联建站基于分布式IDC数据中心构建的平台为众多户提供达州服务器托管 四川大带宽租用 成都机柜租用 成都服务器租用。

OAuth3

OAuth3是一个关于授权的网络标准,他定制了设计思路和执行流程。OAuth3一共有四种授权模式:授权码模式(authorization code)、简化模式(implicit)、密码模式(resource owner password)和客户端模式(client credentials)。数据的所有者告诉系统同意授权第三方应用进入系统,获取这些数据。于是数据所有者生产了一个短时间内有效的授权码(token)给第三方应用,用来代替密码,供第三方使用。具体流程请看下图,具体的OAuth3介绍,可以参考这篇文章,写的很详细。(https://www.jb51.net/article/198292.htm)

使用spring cloud oauth2 实现用户认证登录

Token

令牌(token)和密码(password)的作用是一样的,都可以进入系统获取资源,但是也有几点不同:

  1. 令牌是短期的,到期会自动失效,用户无法修改。密码是长期的,用户可以修改,如果不修改,就不会发生变化。
  2. 令牌可以被数据所有者撤销,令牌会立即失效。密码一般不允许其他人撤销,只能被操作权限更高的人或者本人修改/重制。
  3. 令牌是有权限范围的,会被数据所有者授予。

实现的功能

本篇介绍的是通过密码模式来实现单点登录的功能。

​ 在微服务架构中,我们的一个应用可能会有很多个服务运行,协调来处理实际的业务。这就需要用到单点登录的技术,来统一认证调取接口的是哪个用户。那总不能请求一次,就认证一次,这么做肯定是不行的。那么就需要在认证完用户之后,给这个用户授权,然后发一个令牌(token),有效期内用户请求资源时,就只需要带上这个标识自己身份的token即可。

架构说明
认证中心:oauth3-oauth-server,OAuth3的服务端,主要完成用户Token的生成、刷新、验证等。

微服务:mzh-etl,微服务之一,接收到请求之后回到认证中心(oauth3-oauth-server)去验证。

代码实现

使用到的框架是java基础的spring boot 和spring-cloud-oauth3

认证中心:

1、引入需要的maven包


 org.springframework.boot
 spring-boot-starter-web


 org.springframework.cloud
 spring-cloud-starter-oauth3


 org.springframework.boot
 spring-boot-starter-data-redis


 org.springframework.boot
 spring-boot-starter-actuator

新闻名称:使用springcloudoauth2实现用户认证登录-创新互联
标题来源:http://wjwzjz.com/article/dpeoop.html
在线咨询
服务热线
服务热线:028-86922220
TOP