Spring Security
文章平均质量分 74
上善若水
每天努力一点,就离大神们近一点。
展开
-
十一、SpringSecurity微服务权限方案(2)—— 环境准备 & 搭建项目结构
一、所需环境准备1.1、创建数据库/* Navicat Premium Data Transfer Source Server : localhost Source Server Type : MySQL Source Server Version : 80024 Source Host : localhost:3306 Source Schema : acl_db Target Server Type : MySQL原创 2022-01-22 17:25:44 · 846 阅读 · 0 评论 -
十、SpringSecurity微服务权限方案(1)
一、什么是微服务1.1、微服务由来微服务最早由Martin Fowler 与 James Lewis于2014年共同提出,微服务架构风格是一种使用一套小服务来开发单个应用的方式途径,每个服务运行在自己的进程中,并使用轻量级机制通信,通常是HTTP API,这些服务基于业务能力构建,并能够通过自动化部署机制来独立部署,这些服务使用不同的编程语言实现,以及不同数据存储技术,并保持最低限度的集中式管理。1.2、微服务优势微服务每个模块就相当于一个单独的项目,代码量明显减少,遇到问题也相对来说比较好解决。原创 2022-01-22 14:33:07 · 1014 阅读 · 0 评论 -
九、SpringSecurity Web权限方案(5)—— CSRF
一、CSRF1.1、理解跨站请求伪造(英语:Cross-site request forgery),也被称为 one-click attack或者session riding,通常缩写为CSRF或者XSRF,是一种挟制用户在当前已登录的web应用程序上执行非本意的操作的攻击方法。跟跨网站脚本(XSS)相比,XSS利用的是用户对指定网站的信任,CSRF利用的是网站对用户网页浏览器的信任。跨站请求攻击,简单地说,是攻击者通过一些技术手段欺骗用户的浏览器去访问一个自己曾经认证过的网站并运行一些操作(如发邮件原创 2022-01-20 16:37:36 · 2891 阅读 · 1 评论 -
八、SpringSecurity Web权限方案(4)——记住我功能、用户注销功能
一、记住我功能1.1、创建表CREATE TABLE `persistent_logins` ( `username` varchar(64) COLLATE utf8mb4_general_ci NOT NULL, `series` varchar(64) COLLATE utf8mb4_general_ci NOT NULL, `token` varchar(64) COLLATE utf8mb4_general_ci NOT NULL, `last_used` timestamp原创 2022-01-18 14:58:40 · 644 阅读 · 0 评论 -
七、SpringSecurity Web权限方案(3)——注解使用
一、注解使用1.1、@Secured用户具有某个角色,可以访问方法。另外需要注意的是这里匹配的字符串需要添加前缀ROLE_。使用注解,先要开启注解功能!@EnableGlobalMethodSecurity(securedEnabled = true)在控制器方法上添加注解给用户设置角色测试登录之后直接访问:http://localhost:8081/hello/testSecured1.2、@PreAuthorize先开启注解功能@EnableGlobalMethodS原创 2022-01-17 21:49:03 · 367 阅读 · 1 评论 -
六、SpringSecurity Web权限方案(2)—— 基于数据库实现权限认证
一、 基于数据库实现权限认证1.1、项目结构1.2、添加实体类package com.xbmu.entity;import lombok.Data;@Datapublic class Users { private Integer id; private String username; private String password;}package com.xbmu.entity;import lombok.Data;@Datapublic class原创 2022-01-17 15:18:59 · 740 阅读 · 0 评论 -
五、SpringSecurity Web权限方案(2)——自定义登录页面与权限访问控制
一、自定义登录页面1.1、项目结构1.2、编写登录页面<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title></head><body><form action="/user/login" method="post"> 用户名:<input type原创 2022-01-16 11:11:47 · 456 阅读 · 0 评论 -
四、SpringSecurity Web权限方案(1)
一、设置登录系统的账号、密码1.1、方式一:在application.yml配置server: port: 8081spring: security: user: name: bitaotao password: 1234561.2、方式二:自定义类实现接口SecurityConfig.javapackage com.xbmu.config;import org.springframework.context.annotation.Bean;原创 2022-01-14 16:22:38 · 2302 阅读 · 0 评论 -
三、UserDetailsService与PasswordEncoder接口详解
一、UserDetailsService接口当什么也没有配置的时候,账号和密码是由Spring Security定义生成的。而在实际项目中账号和密码都是从数据库中查询出来的。所以,我们要通过自定义控制认证逻辑。如果需要自定义逻辑时,只需要实现UserDetailsService接口即可。接口定义如下:返回值 UserDetails,这个类是系统默认的用户“主体”UserDetails接口实现类如下:以后我们只需要使用User这个实现类即可!方法参数 username表示用户名。此值是原创 2022-01-14 14:33:15 · 2659 阅读 · 0 评论 -
二、Spring Security基本原理
一、Spring Security常见过滤器介绍Spring Security 本质是一个过滤器链从启动时,可以获取到过滤器链:Spring Security中过滤器的介绍:org.springframework.security.web.context.SecurityContextPersistenceFilter首当其冲的一个过滤器,作用之重要,自不必多言。SecurityContextPersistenceFilter主要是使用SecurityContextRepository在s原创 2022-01-14 14:32:51 · 205 阅读 · 0 评论 -
一、SpringSecurity框架介绍及入门案例
一、SpringSecurity框架简介1.1、概要Spring是非常流行和成功的Java应用开发框架,Spring Security正式Spring家族中的成员。Spring Security基于Spring框架,提供了一套web应用安全性的完整解决方案。正如你可能知道的关于安全方面的两个主要区域是“认证”和“授权”(或者访问控制),一般来说,web应用的安全性包括用户认证(Authentication)和用户授权(Authorization) 两个部分,这两点也是Spring Security重要原创 2022-01-14 14:32:40 · 233 阅读 · 0 评论