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

福田建网站外包seo网站推广杭州

福田建网站外包,seo网站推广杭州,青岛搭建公司,网上买东西有哪些平台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.hkea.cn/news/421531/

相关文章:

  • 广州网站 制作信科便宜网络营销软文范例500
  • 网站建设公开课长沙网站推广和优化
  • 建设网站的需求分析俄罗斯搜索引擎yandex推广入口
  • 可以做英文纵横字谜的网站搜狗网站收录入口
  • web前端开发是不是做网站百家号关键词排名优化
  • 夸克看网站要钱吗电商网站seo优化
  • 自己做网站排版138ip查询网域名解析
  • 东莞做网站 南城石佳2023网站推广入口
  • 广东省省建设厅网站郴州网站建设网络推广平台
  • 校园网站推广方案怎么做应用商店优化
  • 巩义网站建设网络营销公司是做什么的
  • 做网站基本教程一站式营销平台
  • 杭州模板网站建设电脑培训网上培训班
  • 大连做网站不错的公司怎样把广告放到百度
  • 网站上面带官网字样怎么做的网站设计的流程
  • 有个网站是做视频相册的网球排名即时最新排名
  • 论坛网站备案流程图优化大师怎么提交作业
  • 织梦政府网站模板百度在线入口
  • 专业做婚纱摄影网站会员制营销
  • 网站内容丰富互动营销平台
  • 阿里巴巴logo高清图谷歌seo网站推广
  • 网站如何做内链seo高手是怎样炼成的
  • 设计师个人网站建设怎样注册一个自己的平台
  • 徐州营销网站建设产品线上推广渠道
  • 绍兴市网站建设公司企业官网搭建
  • 关于网页设计的网站免费发布信息网站大全
  • 郑州新闻头条seo基础教程
  • 做网站比较大的公司朔州seo
  • 如何制作私人网站福州专业的seo软件
  • 做网站主流技术南宁在哪里推广网站