当前位置: 首页 > news >正文

网站建设平台网站设计手机百度极速版app下载安装

网站建设平台网站设计,手机百度极速版app下载安装,网站收录提交入口怎么做,3322做网站Spring Authorization Server为构建安全的SpringBoot应用提供了一系列解决方案,本节课程我们将结合OAuth2来实现认证服务,该认证服务将支持常用的OAuth2授权模式和刷新Token。 Spring Authorization Server简介 Spring Authorization Server是一个安全框架,它提供了OAuth 2.…

Spring Authorization Server为构建安全的SpringBoot应用提供了一系列解决方案,本节课程我们将结合OAuth2来实现认证服务,该认证服务将支持常用的OAuth2授权模式和刷新Token。

Spring Authorization Server简介

Spring Authorization Server是一个安全框架,它提供了OAuth 2.1和OpenID Connect 1.0规范以及其他相关的实现。Spring Authorization Server是在Spring Security的基础上构建的,它为构建OAuth2授权服务和OpenID Connect 1.0身份提供者提供了一个安全、轻量级、可定制的基础。

OAuth2基本概念

在使用Spring Authorization Server之前,我们需要先对OAuth2有个大致了解,这里我们先来学习下。

简介

OAuth2协议定义了一系列关于认证授权的标准,允许用户授权第三方应用访问他们存储在另外的服务提供者上的信息。目前主流第三方平台提供的授权登录基本都是基于Oauth2协议的,例如微信、QQ、GitHub和Gitee等。而我们要学习的Spring Authorization Server也是基于OAuth2协议的。

相关名词

  • 资源拥有者(Resource owner):拥有该资源的最终用户,他拥有访问资源的账号密码。
  • 资源服务器(Resource server):拥有受保护资源的服务器,如果请求包含正确的访问令牌,可以访问资源。
  • 客户端(Client):访问资源的客户端,会使用访问令牌去获取资源服务器的资源,可以是浏览器、移动设备或者服务器。
  • 认证服务器(Authorization server):用于认证用户的服务器,如果客户端认证通过,发放访问资源服务器的令牌。

授权模式

  • 授权码模式(Authorization Code Grant):功能最完整、流程最严密的Oauth2授权模式。客户端先将用户导向认证服务器,登录后获取授权码,然后进行授权,最后根据授权码获取访问令牌。
  • PKCE授权码模式(Proof Key for Code Exchange):授权码模式的扩展模式,使用授权码授权的OAuth2公共客户端容易受到授权码拦截攻击的影响,该模式通过使用代码交换证明密钥来抵御威胁,可以减轻攻击。
  • 客户端模式(Client Credentials):客户端以自己的名义,而不是以用户的名义,向认证服务器进行认证,从而获取访问令牌。
  • 设备授权码模式(Device Authorization Grant):是一种凭证式授权类型,主要为那些没有浏览器或输入受限的设备提供认证方式。在这种模式下,设备会引导用户在另一台设备的浏览器中打开一个网页进行登录。用户完成登录后,设备就能够获取所需的访问令牌。

两种常用授权模式

授权码模式

具体流程如下:

  • (1)客户端将用户导向认证服务器;
  • (2)用户在认证服务器进行登录并授权;
  • (3)认证服务器返回授权码给客户端;
  • (4)客户端通过授权码和跳转地址向认证服务器获取访问令牌;
  • (5)认证服务器发放访问令牌(有需要带上刷新令牌)。

客户端模式

具体流程如下:

  • (1)客户端以自己的名义向认证服务器获取访问令牌;
  • (2)认证服务器发放访问令牌。

搭建认证服务

接下来我们将创建一个authorization-server模块,用于演示OAuth2的授权码模式和客户端模式。

项目准备

  • 在项目的pom.xml中添加相关依赖;

<dependencies><!--oauth2认证服务相关依赖--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-oauth2-authorization-server</artifactId></dependency><!--SpringBoot Web相关依赖--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><!--持久层框架Mybatis依赖--><dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>${mybatis-spring-boot-starter.version}</version></dependency><!--thymeleaf页面模版引擎依赖--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-thymeleaf</artifactId></dependency><!--由于html中引入了bootstrap,所以需要添加该依赖--><dependency><groupId>org.webjars</groupId><artifactId>webjars-locator-core</artifactId></dependency><dependency><groupId>org.webjars</groupId><artifactId>bootstrap</artifactId><version>5.2.3</version></dependency>
</dependencies>

  • 在MySQL中初始化Spring Authorization Server需要的数据库表,该表结构在spring-security-oauth2-authorization-server-xxx.jar中,有如下3个脚本;

  • 这里已经整理好了一份脚本,创建数据库authorization-server,直接执行如下sql脚本即可。

-- oauth2认证许可表
CREATE TABLE oauth2_authorization_consent
(registered_client_id varchar(100)  NOT NULL,principal_name       varchar(200)  NOT NULL,authorities          varchar(1000) NOT NULL,PRIMARY KEY (registered_client_id, principal_name)
);
-- oauth2认证信息表
CREATE TABLE oauth2_authorization
(id                            varchar(100) NOT NULL,registered_client_id          varchar(100) NOT NULL,principal_name                varchar(200) NOT NULL,authoriz
http://www.ds6.com.cn/news/118310.html

相关文章:

  • 做文化建设的网站有什么软件可以推广
  • 推广网站建设产品介绍南昌seo搜索优化
  • dw个人网站建立教学抖音关键词排名优化软件
  • 做安居客网站需要什么浏览器sem分析是什么
  • 鄂尔多斯做网站站长之家是什么网站
  • 什么职位做网站百度关键词优化策略
  • 做实验学编程的网站网络营销模式包括哪些
  • 网站打不开显示asp百度app官方下载安装到手机
  • 网站建设商城 买模板外链代发平台
  • 如何提高网站pr值专业拓客团队怎么收费
  • 成都的网站建设公司北京seo推广外包
  • 跟做竞价的网站友情链接有用吗广东培训seo
  • 做可动模型的网站媒体代发布
  • 有哪些推广网站网络营销的八种方式
  • 白山北京网站建设德芙巧克力软文推广
  • 欧美做爰视频网站百度霸屏推广
  • 网站页面设计方案外贸网站建设公司
  • 网站建设 镇江windows优化大师在哪里
  • wordpress换域名服务器杭州百度百家号seo优化排名
  • 做企业门户网站就业培训机构有哪些
  • 中小企业网站建设渠道网盘搜索引擎入口
  • 辽宁省住房和城乡建设厅网站沈阳网站建设制作公司
  • 东莞php网站建设价格b站大全永不收费2023入口在哪
  • 做网站的公司msgg提高百度搜索排名工具
  • 怎么做国内网站吗企业推广方案
  • wordpress激活主题windows优化大师卸载不了
  • 网站关于我们示例香港seo公司
  • 网站ico制作哪些平台可以免费打广告
  • 长沙装修公司排行榜百度免费seo
  • 网站关键词上首页网址域名注册信息查询