springboot2.x、3.x学习springboot2.x一、零散知识点补充1、@Import注解:导入组件,导入第三方bean,给容器中自动创建组件2、@Conditional()注解:满足指定条件给容器中创建组件3、@ImportResource("classpath:beans.xml"):导入spring配置文件4、配置文件properties的值绑定5、yaml语法6、sprin
文章目录一、最终效果二、步骤2.1 单向认证2.1.1 创建SpringBoot项目2.1.2 利用keytool生成密钥库(keystore)2.1.3 对SpringBoot进行配置2.1.4 测试2.2 双向认证2.2.1 利用keytool生成用户端密钥库并安装2.2.2 导出用户端数字证书2.2.3 服务器端信任用户端数字证书2.2.4 配置Spring Boot2.2.5 测试三、思
目录前言一、单向认证双向认证二、创建keyStore和trustStore三、服务端配置四、客户端配置 总结参考链接前言本篇博客讲的主要是双向认证,通过一些简单案例来展示双向认证的配置过程。有关单向认证和一些https配置,可以看看我的这篇博客,只有了解清楚单向认证之后,那么双向认证理解更加简单,因为双向认证基于单向认证配置,所以建议在做https双向认证之前,先把https单向认证
转载 2024-02-24 11:35:59
283阅读
SpringBoot的SSL双向认证SpringBoot的SSL双向认证1. 生成证书文件1.1 为客户端生成证书1.2 为服务器生成证书1.3 让服务器信任客户端证书1.3.1 将客户端证书导出为CER文件1.3.2 将CER文件导入到服务器的证书库1.3.3 检查安装结果1.4 让客户端信任服务器证书1.4.1 把服务器证书导出为CER文件1.4.1 在客户端安装服务器证书2. 配置Tomc
一、概述在前面一篇文章:SpringBoot + Shiro实现用户身份认证功能中,我们的自定义Realm继承了AuthenticatingRealm,并实现了doGetAuthenticationInfo()方法完成了用户认证操作,但是AuthenticatingRealm仅仅只是提供了用户认证的功能,在实际工作中,一般不使用AuthenticatingRealm抽象类,通常我们都使用Autho
Spring Boot Shiro本示例要内容基于RBAC,授权、认证加密、解密统一异常处理redis session支持介绍Apache Shiro 是一个功能强大且易于使用的Java安全框架,可执行身份验证,授权,加密和会话管理。借助Shiro易于理解的API,您可以快速轻松地保护任何应用程序(从最小的移动应用程序到最大的Web和企业应用程序)。开始使用添加依赖<!-- shiro --
转载 2024-03-18 18:40:39
44阅读
SSL Socket双向认证实现 一、 SSL概述 SSL协议采用数字证书及数字签名进行双端实体认证,用非对称加密算法进行密钥协商,用对称加密算法将数据加密后进行传输以保证数据的保密性,并且通过计算数字摘要来验证数据在传输过程中是否被篡改和伪造,从而为敏感数据的传输提供了一种安全保障手段。 SSL协议提供的服务主要有: 1)认证用户和服务器,确保
一、首先我们建项目因为我们使用的是基于springcloudi下做认证服务呢,所以我们会创建多个服务 首先给大家介绍一个这几个服务都是干嘛用的? springcloudalibaba-oauth:父项目 里面包含了一些maven依赖,这样的优势就是 子项目中的maven依赖我就不用添加了,直接添加到父项目就好了 springcloudalibaba-oauth-auth: 这个项目是用来做认证的,
转载 2024-04-11 14:07:09
59阅读
一、 相关概念说明 1、Spring Security Spring Security是一个能够为基于Spring的企业应用系统提供声明式的安全访问控制解决方案的安全框架。它提供了一组可以在Spring应用上下文中配置的Bean,充分利用了Spring IoC,DI(控制反转Inversion of Control ,DI:Dependency Injection 依赖注入)和AOP(面向切面编程
转载 2024-05-13 09:38:00
62阅读
加密,是以某种特殊的算法改变原有的信息数据,使得未授权的用户即使获得了已加密的信息,但因不知解密的方法,仍然无法了解信息的内容。大体上分为双向加密和单向加密,而双向加密又分为对称加密和非对称加密(有些资料将加密直接分为对称加密和非对称加密)。 双向加密大体意思就是明文加密后形成密文,可以通过算法还原成明文。而单向加密只是对信息进行了摘要计算,不能通过算法生成明文,单向加密从严格意思上说不能算是加密
基础知识 SSL:Secure Socket Layer,安全套接字层,它位于TCP层与Application层之间。提供对Application数据的加密保护(密文),完整性保护(不被篡改)等安全服务,它缺省工作在TCP 443 端口,一般对HTTP加密,即俗称的HTTPS。 SSL双向认证具体过程 ① 浏览器发送一个连接请求给安全服务器。 ② 服务器将自己的证书,以及同证书相关的信息发送
一、背景说明1.1 面临问题最近一份产品检测报告建议使用基于pki的认证方式,由于产品已实现,商量之下认为其意思是使用双向认证以处理中间人形式。《信息安全工程》中接触过双向认证,但有两个问题。第一个是当时最终的课程设计客户端是浏览器,服务端是tomcat双向认证只需要对两者进行配置并不需要自己真的实现代码。第二个是虽然课程也有接近双向认证实现代码,但当时是Java+JCE环境现在要
1.原理双向认证,顾名思义,客户端和服务器端都需要验证对方的身份,在建立 HTTPS 连接的过程中,握手的流程比单向认证多了几步。单向认证的过程,客户端从服务器端下载服务器端公钥证书进行验证,然后建立安全通信通道。双向通信流程,客户端除了需要从服务器端下载服务器的公钥证书进行验证外,还需要把客户端的公钥证书上传到服务器端给服务器端进行验证,等双方都认证通过了,才开始建立安全通信通道进行数据传输。1
转载 2023-08-13 23:25:09
602阅读
环境:服务器:apache服务器,openssl。思路:1、先搞定ssl单向验证,再解决双向。2、先PC,再java平台,再android,不一定非得这样,自由选择,个人是为了弄清整个流程,多走了些路。过程步骤:1、在pc上用apache搭建了一个http服务器,用openssl建立自签名的CA证书ca.crt,签发服务器证书server.crt,签发客户端证书client.crt。(apach
转载 2023-06-03 14:48:22
485阅读
前言 首先介绍一下Keepalived,它是一个高性能的服务器高可用或热备解决方案,起初是专为LVS负载均衡软件设计的,Keepalived主要来防止服务器单点故障的发生问题,可以通过其与Nginx的配合实现web服务端的高可用。Keepalived以VRRP协议为实现基础,VRRP是Virtual Router Redundancy Protocol(虚拟路由冗余协议)的缩写,VRRP协议将两台
安全框架安全框架,简单说是对访问权限进行控制,应用的安全性包括用户认证(Authentication)和用户授权(Authorization)两个部分。用户认证:验证某个用户是否为系统中的合法主体,也就是说用户能否访问该系统。用户认证一般要求用户提供用户名和密码,系统通过校验用户名和密码来完成认证过程。用户授权:验证某个用户是否有权限执行某个操作。在一个系统中,不同用户所具有的权限是不同的。比如对
SSL协议即用到了对称加密也用到了非对称加密(公钥加密),在建立传输链路时,SSL首先对对称加密的密钥使用公钥进行非对称加密,链路建立好之后,SSL对传输内容使用对称加密。一、单向认证Https在建立Socket连接之前,需要进行握手,具体过程如下:1、客户端向服务端发送SSL协议版本号、加密算法种类、随机数等信息。2、服务端给客户端返回SSL协议版本号、加密算法种类、随机数等信息,同时也返回服务
转载 2024-01-03 16:07:47
122阅读
Shiro 是一个功能强大、灵活的,开源的安全框架,主要可以帮助我们解决程序开发中认证和权限等问题。基于拦截器做的权限系统,权限控制的粒度有限,为了方便各种各样的常用的权限管理需求的实现,我们有必要使用比较好的安全框架。早期Spring security 作为一个比较完善的安全框架比较火,但是Springsecurity学习成本比较高,于是就出现了shiro安全框架,学习成本降低了很多,而且基本的
  3)将服务端证书,导入到客户端的Trust KeyStore中 ServerJava代码package ssl;    import java.io.BufferedInputStream;   import java.io.BufferedOutputStream; &nb
转载 精选 2012-10-09 13:16:39
939阅读
我们常见的SSL验证较多的只是验证我们的服务器是否是真实正确的,当然如果你访问的URL压根就错了,那谁也没有办法。这个就是所谓的SSL单向认证。但是实际中,我们有可能还会验证客户端是否符合要求,也就是给我们每个用户颁发一个证书,比且每个数字证书都是唯一的,不公开的。这样就能通过这个数字证书保证当前访问我服务器的这个用户是经过服务器认可的,其他人不可访问。双向认证 从第一个层面上 确保了服务器 与客户端 都是互相认可的。那么他们之间要进行通信,就会在通信协议上附加SSL协议,确保通信的内容是加密的,即使是sniffer这样的网络嗅探工具看到的都是 乱码。以后给大家演示下不加密的情况下,用snif
转载 2013-06-18 18:42:00
131阅读
2评论
  • 1
  • 2
  • 3
  • 4
  • 5