摘要:
4.2 Redis配置 4.2.1 安装Redis 1、安装Redis服务 下载Windows版本的redis:https://github.com/MicrosoftArchive/redis/tags 下载Redis-x64-3.2.100版本,解压Redis-x64-3.2.100.zip 进 阅读全文
摘要:
4 认证接口开发 4.1 需求分析 用户登录的流程图如下: 执行流程: 1、用户登录,请求认证服务 2、认证服务认证通过,生成jwt令牌,将jwt令牌及相关信息写入Redis,并且将身份令牌写入cookie 3、用户访问资源页面,带着cookie到网关 4、网关从cookie获取token,并查询R 阅读全文
摘要:
生成jwt需要用私钥来签名。在Auth认证服务下创建测试类 创建密钥工厂,构造函数需要的参数 获取私钥 有了私钥就可以生成JWT令牌 使用jwtHelper是spring security里面的类 encode编码方法里面需要 参数1:内容 参数2:签名 令牌的内容用HashMap。然后转成json 阅读全文
摘要:
3.6.3 JWT入门 Spring Security 提供对JWT的支持,本节我们使用Spring Security 提供的JwtHelper来创建JWT令牌,校验JWT令牌 等操作。 3.6.3.1 生成私钥和公钥 JWT令牌生成采用非对称加密算法 1、生成密钥证书 下边命令生成密钥证书,采用R 阅读全文
摘要:
3.6 JWT研究 3.6.1 JWT介绍 在介绍JWT之前先看一下传统校验令牌的方法,如下图: 问题: 传统授权方法的问题是用户每次请求资源服务,资源服务都需要携带令牌访问认证服务去校验令牌的合法性,并根 据令牌获取用户的相关信息,性能低下。 解决: 使用JWT的思路是,用户认证通过会得到一个JW 阅读全文
摘要:
3.5校验令牌 Spring Security Oauth2提供校验令牌的端点,如下: Get: http://localhost:40400/auth/oauth/check_token?token= 参数: token:令牌 使用postman测试如下: 校验地址 前面路径是固定的: 把获取到的 阅读全文
摘要:
密码模式(Resource Owner Password Credentials)与授权码模式的区别是申请令牌不再使用授权码,而是直接 通过用户名和密码即可申请令牌。 测试如下: Post请求:http://localhost:40400/auth/oauth/token 参数: grant_typ 阅读全文
摘要:
3.3.4.4 解决swagger-ui无法访问 当课程管理加了授权之后再访问swagger-ui则报错: 这里默认配置的了所有的请求都必须认证 把图片认证的路径加进去的话 那么访问课程图片的列表 就不需要认证了 重启course服务 在swaggerUI内测试接口 现在测试不行。要传token / 阅读全文
摘要:
下面要完成 5、6两个步骤 3.3.4 资源服务授权 3.3.4.1 资源服务授权流程 资源服务拥有要访问的受保护资源,客户端携带令牌访问资源服务,如果令牌合法则可成功访问资源服务中的资 源,如下图: 上图的业务流程如下: 1、客户端请求认证服务申请令牌 2、认证服务生成令牌 认证服务采用非对称加密 阅读全文
摘要:
3.3 Oauth2授权码模式 3.3.1 Oauth2授权模式 Oauth2有以下授权模式: 授权码模式(Authorization Code) 隐式授权模式(Implicit) 密码模式(Resource Owner Password Credentials) 客户端模式(Client Cred 阅读全文
摘要:
3 Spring Security Oauth2研究 3.1 目标 本项目认证服务基于Spring Security Oauth2进行构建,并在其基础上作了一些扩展,采用JWT令牌机制,并自定 义了用户身份信息的内容。 本教程的主要目标是学习在项目中集成Spring Security Oauth2的 阅读全文
摘要:
2.3 Spring security Oauth2认证解决方案 本项目采用 Spring security + Oauth2完成用户认证及用户授权,Spring security 是一个强大的和高度可定制的身 份验证和访问控制框架,Spring security 框架集成了Oauth2协议,下图是 阅读全文
摘要:
2.2 Oauth2认证 2.2.1 Oauth2认证流程 第三方认证技术方案最主要是解决认证协议的通用标准 问题,因为要实现 跨系统认证,各系统之间要遵循一定的 接口协议。 OAUTH协议为用户资源的授权提供了一个安全的、开放而又简易的标准。同时,任何第三方都可以使用OAUTH认 证服务,任何服务 阅读全文
摘要:
2 用户认证技术方案 2.1 单点登录技术方案 分布式系统要实现单点登录,通常将认证系统独立抽取出来,并且将用户身份信息存储在单独的存储介质,比如: MySQL、Redis,考虑性能要求,通常存储在Redis中,如下图: 单点登录的特点是: 1、认证系统为独立的系统。 2、各子系统通过Http或其它 阅读全文
摘要:
1.1 用户认证与授权 截至目前,项目已经完成了在线学习功能,用户通过在线学习页面点播视频进行学习。如何去记录学生的学习过程 呢?要想掌握学生的学习情况就需要知道用户的身份信息,记录哪个用户在什么时间学习什么课程;如果用户要购 买课程也需要知道用户的身份信息。所以,去管理学生的学习过程最基本的要实现 阅读全文
摘要:
3 fastDFS入门 3.1fastDFS安装与配置 3.1.1 导入虚拟机 对fastDFS的安装过程不要求学生掌握,可以直接导入老师提供虚拟机。 1、使用Vmware打开虚拟机配置文件“CentOS 7 64 位.vmx”,提示如下图: 2、选择“我已复制该虚拟机” 3、启动虚拟机之前启动VM 阅读全文
摘要:
2.2.2文件上传流程 客户端上传文件后存储服务器将文件ID返回给客户端,此文件ID用于以后访问该文件的索引信息。文件索引信息 包括:组名,虚拟磁盘路径,数据两级目录,文件名。 组名:文件上传后所在的storage组名称,在文件上传成功后有storage服务器返回,需要客户端自行保存。 虚拟磁盘路径 阅读全文
摘要:
2 什么是fastDFS 2.1 fastDSF介绍 FastDFS是用c语言编写的一款开源的分布式文件系统,它是由淘宝资深架构师余庆编写并开源。FastDFS专为互联 网量身定制,充分考虑了冗余备份、负载均衡、线性扩容等机制,并注重高可用、高性能等指标,使用FastDFS很 容易搭建一套高性能的文 阅读全文
摘要:
1.2.1什么是文件系统 引用“百度百科”中的描述: 总结:文件系统是负责管理和存储文件的系统软件,它是操作系统和硬件驱动之间的桥梁,操作系统通过文件系统提供的接口去存取文件,用户通过操作系统访问磁盘上的文件。如下图: 常见的文件系统:FAT16/FAT32、NTFS、HFS、UFS、APFS、XF 阅读全文
摘要:
1.2.2什么是分布式文件系统 引用“百度百科”中的描述: 为什么会有分布文件系统呢? 分布式文件系统是面对互联网的需求而产生,互联网时代对海量数据如何存储?靠简单的增加硬盘的个数已经满足 不了我们的要求,因为硬盘传输速度有限但是数据在急剧增长,另外我们还要要做好数据备份、数据安全等。 采用分布式文 阅读全文