您现在的位置是:主页 > Web前端技术 > Web前端技术
Spring Security如何使用数据库登录认证授权开发技术
IDCBT2022-01-07【服务器技术】人已围观
简介本篇文章给大家分享的是有关SpringSecurity如何使用数据库登录认证授权,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来
本篇文章给大家分享的是有关Spring Security如何使用数据库登录认证授权,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
一、搭建项目环境1、创建 RBAC五张表RBAC,即基于角色的权限访问控制(Role-Based Access Control),就是用户通过角色与权限进行关联。
在这种模型中,用户与角色之间,角色与权限之间,一般者是多对多的关系。
在 MySQL数据库中,创建如下几个表:
DROP TABLE IF EXISTS sys_user; CREATE TABLE sys_user( id BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键id' , username VARCHAR(60) COMMENT '用户名' , password VARCHAR(255) COMMENT '密码' , status tinyint(1) COMMENT '用户状态,1-开启-0禁用' , password_non_expired tinyint(1) COMMENT '密码是否失效,1-可用,0-失效' , PRIMARY KEY (id) ) COMMENT = '用户表'; DROP TABLE IF EXISTS sys_role; CREATE TABLE sys_role( id BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键id' , role_name VARCHAR(64) NOT NULL COMMENT '角色名' , role_desc VARCHAR(64) NOT NULL COMMENT '角色描述' , PRIMARY KEY (id) ) COMMENT = '角色表'; DROP TABLE IF EXISTS sys_permission; CREATE TABLE sys_permission( id BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键id' , parent_id BIGINT COMMENT '父id' , permission_name VARCHAR(64) COMMENT '菜单名称' , permission_url VARCHAR(255) COMMENT '菜单地址' , PRIMARY KEY (id) ) COMMENT = '权限表'; DROP TABLE IF EXISTS sys_user_role; CREATE TABLE sys_user_role( id BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键id' , user_id BIGINT NOT NULL COMMENT '用户id' , role_id BIGINT COMMENT '角色id' , enabled tinyint(1) DEFAULT 1 COMMENT '是否有效' , PRIMARY KEY (id) ) COMMENT = '用户角色关联表'; DROP TABLE IF EXISTS sys_role_permission; CREATE TABLE sys_role_permission( id BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键id' , role_id BIGINT NOT NULL COMMENT '角色id' , permission_id BIGINT COMMENT '权限id' , PRIMARY KEY (id) ) COMMENT = '角色权限表';标签:很赞哦! ()