
安全框架
安全框架
pengjunlee
不学自知,不问自晓,古今行事,未之有也。
展开
-
Kerberos身份验证流程
介绍:Kerberos 是一种由 MIT(麻省理工大学)提出的一种网络身份验证协议。它旨在通过使用密钥加密技术为客户端/服务器应用程序提供强身份验证。在 Kerberos 认证中,最主要的问题是如何证明「你是你」的问题,如当一个 Client 去访问 Server 服务器上的某服务时,Server 如何判断 Client 是否有权限来访问自己主机上的服务,同时保证在这个过程中的通讯内容即使被拦截或篡改也不影响通讯的安全性,这正是 Kerberos 解决的问题。在域渗透过程中 Kerberos 协议的转载 2020-05-21 09:26:22 · 2842 阅读 · 0 评论 -
理解OAuth 2.0
OAuth是一个关于授权(authorization)的开放网络标准,在全世界得到广泛应用,目前的版本是2.0版。本文对OAuth 2.0的设计思路和运行流程,做一个简明通俗的解释,主要参考材料为RFC 6749。更新:我后来又写了一组三篇的《OAuth 2.0 教程》,更加通俗,并带有代码实例,欢迎阅读。一、应用场景为了理解OAuth的适用场合,让我举一个假设的例子。有...转载 2020-04-24 16:48:25 · 302 阅读 · 0 评论 -
GitHub OAuth 第三方登录示例教程
这组 OAuth 系列教程,第一篇介绍了基本概念,第二篇介绍了获取令牌的四种方式,今天演示一个实例,如何通过 OAuth 获取 API 数据。很多网站登录时,允许使用第三方网站的身份,这称为"第三方登录"。下面就以 GitHub 为例,写一个最简单的应用,演示第三方登录。一、第三方登录的原理所谓第三方登录,实质就是 OAuth 授权。用户想要登录 A 网站,A 网站让用户提供第...转载 2020-04-24 15:19:42 · 713 阅读 · 0 评论 -
OAuth 2.0 的四种方式
上一篇文章介绍了 OAuth 2.0 是一种授权机制,主要用来颁发令牌(token)。本文接着介绍颁发令牌的实务操作。下面我假定,你已经理解了 OAuth 2.0 的含义和设计思想,否则请先阅读这个系列的上一篇文章。RFC 6749OAuth 2.0 的标准是RFC 6749文件。该文件先解释了 OAuth 是什么。OAuth 引入了一个授权层,用来分离两种不同的角色:...转载 2020-04-24 14:58:49 · 341 阅读 · 0 评论 -
OAuth 2.0 的一个简单解释
OAuth 2.0 是目前最流行的授权机制,用来授权第三方应用,获取用户数据。这个标准比较抽象,使用了很多术语,初学者不容易理解。其实说起来并不复杂,下面我就通过一个简单的类比,帮助大家轻松理解,OAuth 2.0 到底是什么。一、快递员问题我住在一个大型的居民小区。小区有门禁系统。进入的时候需要输入密码。我经常网购和外卖,每天都有快递员来送货。我必须找到一个办...转载 2020-04-24 14:47:02 · 321 阅读 · 0 评论 -
10分钟了解JSON Web令牌(JWT)
目录跨域身份验证JWT的原则JWT的数据结构JWT头有效载荷签名哈希Base64URL算法JWT的用法JWT问题和趋势原文地址:https://baijiahao.baidu.com/s?id=1608021814182894637&wfr=spider&for=pcJSON Web Token(JWT)是目前最流行的跨域身份验证解...转载 2019-07-10 15:21:02 · 12588 阅读 · 0 评论 -
Shiro步步为营--如何优雅地与JWT集成
目录鉴权流程项目搭建pom.xml配置Shiro用户登录LoginController.javaShiroRealm.javaBaseResponse.javaUserEntity.java签发Token再次请求ArticleController.javaJwtFilter.javaJwtToken.javaJwtRealm.java...原创 2019-07-12 11:27:46 · 33236 阅读 · 29 评论 -
Shiro步步为营--奇淫技巧
目录会话管理启用会话管理自定义SessionDAO会话验证关于缓存记住我认证VS记住我启用记住我会话管理Shiro 提供了完整的企业级会话管理功能,不依赖于底层容器(如web容器tomcat),不管 JavaSE 还是 JavaEE 环境都可以使用,提供了会话管理、会话事件监听、会话存储/持久化、容器无关的集群、失效/过期支持、对Web 的透明支持、 SSO...原创 2019-07-05 13:52:46 · 16430 阅读 · 0 评论 -
Shiro步步为营--权限验证
本章将在上一章《Shiro步步为营--Springboot开启身份验证》的基础上,对项目代码进行改造,演示如何开启Shiro权限验证。开启权限验证修改Realm同时开启身份验证和权限验证,需要对 Realm 进行修改,使其继承 AuthorizingRealm ,从上面的继承关系不难看出 AuthorizingRealm 也继承自AuthenticatingRealm ,但 A...原创 2019-07-04 15:08:41 · 16087 阅读 · 0 评论 -
Shiro步步为营--认证高阶斗技
在上一章《Shiro步步为营--Springboot开启身份验证》中,我们并未编写任何关于密码校验的代码,却实现了用户登录身份验证。很显然,密码的比对工作是由Shiro来帮我们实现了,接下来,我们就先来看看Shiro是如何完成密码比对的。密码比对过程分析在调用 subject.login(token) 方法后,其内部会通过 LoginRealm 调用父类 AuthenticatingR...原创 2019-07-03 16:27:33 · 11286 阅读 · 0 评论 -
Shiro步步为营--Springboot开启身份验证
项目的完整目录层次如下图所示。项目地址:https://github.com/pengjunlee/shiro-authenticate.git添加依赖与配置在本工程中,Shiro使用了Ehchache作缓存,因此需要在工程POM文件中引入它们的Maven依赖。 <parent> <groupId>org.springframework.boot...原创 2019-07-03 09:13:17 · 16218 阅读 · 0 评论 -
Shiro步步为营--HelloWorld
Shiro简介Apache Shiro是一个强大且易用的Java安全框架,它可以完成诸如:身份认证、授权、加密、会话管理等功能,并且可以很方便地与Web 集成或者使用缓存。使用Shiro易于理解的API,你可以快速、轻松地获得任何应用程序,从最小的移动应用程序到最大的网络和企业应用程序。Shiro官网:http://shiro.apache.org/Shiro的架构从顶层概念设计层...原创 2019-06-27 14:28:48 · 20235 阅读 · 0 评论