1. Sa-Token 介绍Sa-Token 是一个轻量级 Java 权限认证框架,主要解决:登录认证、权限认证、单点登录、OAuth2.0、分布式Session会话、微服务网关 等一系列权限相关问题。功能结构图2. 登录认证对于一些登录之后才能访问的接口(例如:查询我的账号资料),我们通常的做法是增加一层接口校验:如果校验通过,则:正常返回数据。如果校验未通过,则:抛出异常,告知其需要先进行
转载 2023-08-21 15:50:21
1214阅读
一、是什么JWT(JSON Web Token),本质就是一个字符串书写规范,如下图,作用是用来在用户和服务器之间传递安全可靠的信息在目前前后端分离的开发过程中,使用token机制用于身份验证是最常见的方案,流程如下:服务器当验证用户账号和密码正确的时候,给用户颁发一个令牌,这个令牌作为后续用户访问一些接口的凭证后续访问会根据这个令牌判断用户时候有权限进行访问Token,分成了三部分,头部(H
中心系统设计 转至元数据结尾 转至元数据起始 一、现有业务流程由于和钱相关的事件(借入、贷出、赚利差、转帐、扫码付款等)都需要前置校验,目前已有的方式有如下几项:拒绝操作短信交易密码(类型有:只有密码面板 OR 带余额以及支付方式)肖像认证登录密码指纹(TouchID)(目前仅仅适用于iPhone5S以上的用户)上传资料审核四要素(用户未绑卡,选择名字与身份证
转载 2024-01-17 12:43:25
78阅读
## API设计 ### 前言 在现代软件开发中,API(Application Programming Interface)起到了非常重要的作用。API是不同软件系统之间进行通信和数据交换的桥梁,它定义了系统之间的接口规范,使得不同系统能够相互调用和交互。在开放的互联网环境中,API是一个必不可少的安全机制,用于验证请求方的身份和权限。本文将介绍API设计原则和常见的实现方式,
原创 2023-08-16 05:02:28
30阅读
OAUTH协议为用户资源的授权提供了一个安全的、开放而又简易的标准。与以往的授权方式不同之处是OAUTH的授权不会使第三方触及到用户的帐号信息(如用户名与密码),即第三方无需使用用户的用户名与密码就可以申请获得该用户资源的授权,因此OAUTH是安全的。同时,任何第三方都可以使用OAUTH认证服务,任何服务提供商都可以实现自身的OAUTH认证服务,因而OAUTH是开放的。典型案例如果一个用户拥有两项
(authentication)是指验证用户是否拥有访问系统的权利。传统的是通过密码来验证的。这种方式的前提是,每个获得密码的用户都已经被授权。在建立用户时,就为此用户分配一个密码,用户的密码可以由管理员指定,也可以由用户自行申请。这种方式的弱点十分明显:一旦密码被偷或用户遗失密码,情况就会十分麻烦,需要管理员对用户密码进行重新修改,而修改密码之前还要人工验证用户的合法身份。然而,以上的解
我们知道,做为一个web系统,少不了要调用别的系统的接口或者是提供接口供别的系统调用。从接口的使用范围也可以分为对内和对外两种,对内的接口主要限于一些我们内部系统的调用,多是通过内网进行调用,往往不用考虑太复杂的操作。但是,对于对外的接口,我们就不得不重视这个问题,外部接口没有做的操作就直接发布到互联网无疑是!而这不仅有暴露数据的风险,同时还有数据被篡改的风险,严重的甚至是影响到系统的正常
转载 2023-08-01 17:30:29
239阅读
1点赞
GateWay作为网关路由是挡在了我们的系统最前边,进行动态路由配置和转发。那么我们就可以在网关层进行网关。https://cloud.spring.io/spring-cloud-gateway/2.2.x/reference/html/Gateway过滤器的介绍之前说过GateWay的组件中有Filter(过滤器)这一功能,就是web开发的三大组件(Servlet、Filter、Liste
转载 2023-12-20 22:04:42
99阅读
1:使用开源的jar包API-Signed: 一个轻松实现API签名校验的库。 (gitee.com)本地下载源码:E:\JavaCode\java-API签名校验2:该jar 包操作说明本仓库包含以下内容:签名校验的源码基于Spring boot的web示例由于要开放接口供第三方调用, 采用签名校验的方式以保证安全, 于是有了这个项目。 该项目使用面向切面的方式对签名进行校验, 接口本身只需要关
转载 2023-09-06 13:16:10
34阅读
作者:风中程序猿1 题记 基于微服务架构和Docker容器技术的PaaS云平台建设目标是给我们的开发人员提供一套服务快速开发、部署、运维管理、持续开发、持续集成的流程。平台提供基础设施、中间件、数据服务、云服务器等资源,开发人员只需要开发业务代码并提交到平台代码库,做一些必要的配置,系统会自动构建、部署,实现应用的敏捷开发、快速迭代。在系统架构上,PaaS云平台主要分为微服务架构、Docker
文章目录一、主要内容二、SpringSecurity加密解密1.pom依赖2.SpringSecurity配置类3.Controller4.Service5.Repository6.Model三、JWT1.JWT的组成头部载荷签名登录生成token以后每次访问的认证2.Java的JJWT认证实现测试类代码封装JwtUtil工具类3.修改登陆逻辑4.操作ControllerServiceServ
Java下常用的安全框架主要有Spring Security和shiro,都可提供非常强大的功能,但学习成本较高。在微服务下多多少少都会对服务有一定的入侵性。 为了降低依赖,减少入侵,让功能相对应用服务透明,我们采用网关拦截资源请求的方式进行。一、整体架构 用户模块位于API GateWay服务中,所有的API资源请求都需要从此通过。做身份认证,通过则缓存用户权限数据,
1. Sa-Token 介绍Sa-Token 是一个轻量级 Java 权限认证框架,主要解决:登录认证、权限认证、单点登录、OAuth2.0、分布式Session会话、微服务网关 等一系列权限相关问题。功能结构图 2. 登录认证对于一些登录之后才能访问的接口(例如:查询我的账号资料),我们通常的做法是增加一层接口校验:如果校验通过,则:正常返回数据。如果校验未通过,则:抛出异常,告知其需要先
转载 2023-12-18 22:22:48
209阅读
我们在开发中需要用到对接口的登录,首先后台会根据几个参数组成字符串+secretKey,用AES(ECB)加密算法来生成秘钥ticket,第三方访问的时候,带在提供的系统认证地址后面(列如http(s)://test.com?ticket=秘钥)参数:这些参数包括时间戳,姓名,手机号,8位随机数,这些都是基本的,有的还需要根据实际业务场景添加一些信息,比如人员所在地,所在行政区划,年龄,职位信
自定义过滤器,重写isAccessAllowed自定义realm,重写doGetAuthorizationInfo我需要根据链接参数不同进行授权,就是通过这种方法的。public class CustomRealm extends AuthorizingRealm 下面是授权代码 /** * 获取权限 */ @Override protected AuthorizationInfo doGetAu
转载 2023-08-29 12:57:45
339阅读
一些理解,不一定正确请求通过API,进入Basic Authentication Filter,在这里拿到token,解析token,拿到username和password,将用户输入的用户名密码进行封装,并提供给AuthenticationManager.authenticate()方法进行验证,验证成功后,返回一个认证成功的UsernamePasswordAuthenticationToken
转载 2023-07-22 21:09:33
97阅读
什么是是指在信息系统、网络或应用中,确定用户的身份是否合法,并根据用户的身份和权限,决定其在系统中能够访问哪些资源或执行哪些操作的过程。通常包括身份验证和权限验证两个过程。身份验证是确定用户是否是系统中的合法用户,权限验证是确定用户具有哪些权限。常见的方式包括用户名密码认证、数字证书认证、生物特征认证等。是信息安全的重要组成部分,可以有效防止未经授权的用户访问系统资源或执行操作
参数化2在testng.xml中增加parameter可以赋值给DataProvider<parameter name="sheetIndex" value="0"></parameter>测试代码:public class RegisterCase { public int sheetIndex; @BeforeClass @Parameters
转载 2023-09-03 00:57:38
230阅读
1.用户注册前台需要给我们传递用户名、密码、手机号、手机验证码。验证用户前台传过来的数据是否符合规范,我们使用的Hibernate Validator框架实现的服务端表单校验。短信验证码这块,我们采用的阿里的大于短信接口来做的,我们单独搭建了一个短信微服务,发送的短信请求通过MQ消息由短信微服务消费,进行短信发送。密码我们使用的是Spring提供的BCryptPasswordEncoder加密算法
转载 2024-07-12 06:38:38
15阅读
权作用在实际的业务中,必然会存在和其他平台系统进行数据传输。这个时候出于对数据的保密要求,都会对接口(API)添加机制,识别调用方的真实身份,对未通过的请求不做任何业务处理,以帮助接口更好的识别用户及其调用行为的合法性。API的作用:识别调用方身份,控制API的访问权限,进而保护平台数据的安全。方案设计目前主要分为两种:Token方案和API签名方案。 1、两者最大的不同在于
转载 2023-10-07 16:53:57
41阅读
  • 1
  • 2
  • 3
  • 4
  • 5