Spring-Security笔记3 相关数据库建立

使用ORALCE数据库

spring-security提供了一套建表语句

表之间的关系:



spring-security提供的建表语句


-- ----------------------------
-- Table structure for PERSISTENT_LOGINS
-- ----------------------------
DROP TABLE "PERSISTENT_LOGINS";
CREATE TABLE "PERSISTENT_LOGINS" (
"USERNAME" VARCHAR2(64 BYTE) NULL ,
"SERIES" VARCHAR2(64 BYTE) NOT NULL ,
"TOKEN" VARCHAR2(64 BYTE) NULL ,
"LAST_USED" TIMESTAMP(6)  NULL 
)
LOGGING
NOCOMPRESS
NOCACHE

;
COMMENT ON TABLE "PERSISTENT_LOGINS" IS 'Spring Remember me 持久化';

-- ----------------------------
-- Records of PERSISTENT_LOGINS
-- ----------------------------

-- ----------------------------
-- Table structure for SYS_AUTHORITIES
-- ----------------------------
DROP TABLE "SYS_AUTHORITIES";
CREATE TABLE "SYS_AUTHORITIES" (
"AUTHORITY_ID" VARCHAR2(100 BYTE) NOT NULL ,
"AUTHORITY_MARK" VARCHAR2(100 BYTE) NULL ,
"AUTHORITY_NAME" VARCHAR2(100 BYTE) NOT NULL ,
"AUTHORITY_DESC" VARCHAR2(200 BYTE) NULL ,
"MESSAGE" VARCHAR2(100 BYTE) NULL ,
"ENABLE" NUMBER NULL ,
"ISSYS" NUMBER NULL ,
"MODULE_ID" VARCHAR2(100 BYTE) NULL 
)
LOGGING
NOCOMPRESS
NOCACHE

;

-- ----------------------------
-- Table structure for SYS_AUTHORITIES_RESOURCES
-- ----------------------------
DROP TABLE "SYS_AUTHORITIES_RESOURCES";
CREATE TABLE "SYS_AUTHORITIES_RESOURCES" (
"ID" VARCHAR2(100 BYTE) NOT NULL ,
"RESOURCE_ID" VARCHAR2(100 BYTE) NOT NULL ,
"AUTHORITY_ID" VARCHAR2(100 BYTE) NOT NULL 
)
LOGGING
NOCOMPRESS
NOCACHE

;

-- ----------------------------
-- Records of SYS_AUTHORITIES_RESOURCES
-- ----------------------------

-- ----------------------------
-- Table structure for SYS_MODULES
-- ----------------------------
DROP TABLE "SYS_MODULES";
CREATE TABLE "SYS_MODULES" (
"MODULE_ID" VARCHAR2(100 BYTE) NOT NULL ,
"MODULE_NAME" VARCHAR2(100 BYTE) NOT NULL ,
"MODULE_DESC" VARCHAR2(200 BYTE) NULL ,
"MODULE_TYPE" VARCHAR2(100 BYTE) NULL ,
"PARENT" VARCHAR2(100 BYTE) NULL ,
"MODULE_URL" VARCHAR2(100 BYTE) NULL ,
"I_LEVEL" NUMBER NULL ,
"LEAF" NUMBER NULL ,
"APPLICATION" VARCHAR2(100 BYTE) NULL ,
"CONTROLLER" VARCHAR2(100 BYTE) NULL ,
"ENABLE" NUMBER(1) NULL ,
"PRIORITY" NUMBER NULL 
)
LOGGING
NOCOMPRESS
NOCACHE

;
COMMENT ON COLUMN "SYS_MODULES"."I_LEVEL" IS '1';

-- ----------------------------
-- Records of SYS_MODULES
-- ----------------------------

-- ----------------------------
-- Table structure for SYS_RESOURCES
-- ----------------------------
DROP TABLE "SYS_RESOURCES";
CREATE TABLE "SYS_RESOURCES" (
"RESOURCE_ID" VARCHAR2(100 BYTE) NOT NULL ,
"RESOURCE_TYPE" VARCHAR2(100 BYTE) NULL ,
"RESOURCE_NAME" VARCHAR2(100 BYTE) NULL ,
"RESOURCE_DESC" VARCHAR2(200 BYTE) NULL ,
"RESOURCE_PATH" VARCHAR2(200 BYTE) NULL ,
"PRIORITY" VARCHAR2(100 BYTE) NULL ,
"ENABLE" NUMBER NULL ,
"ISSYS" NUMBER NULL ,
"MODULE_ID" VARCHAR2(100 BYTE) NULL 
)
LOGGING
NOCOMPRESS
NOCACHE

;
COMMENT ON COLUMN "SYS_RESOURCES"."RESOURCE_TYPE" IS 'URL,METHOD';

-- ----------------------------
-- Records of SYS_RESOURCES
-- ----------------------------

-- ----------------------------
-- Table structure for SYS_ROLES
-- ----------------------------
DROP TABLE "SYS_ROLES";
CREATE TABLE "SYS_ROLES" (
"ROLE_ID" VARCHAR2(100 BYTE) NOT NULL ,
"ROLE_NAME" VARCHAR2(100 BYTE) NULL ,
"ROLE_DESC" VARCHAR2(200 BYTE) NULL ,
"ENABLE" NUMBER NULL ,
"ISSYS" NUMBER NULL ,
"MODULE_ID" VARCHAR2(100 BYTE) NULL 
)
LOGGING
NOCOMPRESS
NOCACHE

;

-- ----------------------------
-- Table structure for SYS_ROLES_AUTHORITIES
-- ----------------------------
DROP TABLE "SYS_ROLES_AUTHORITIES";
CREATE TABLE "SYS_ROLES_AUTHORITIES" (
"ID" VARCHAR2(100 BYTE) NOT NULL ,
"AUTHORITY_ID" VARCHAR2(100 BYTE) NOT NULL ,
"ROLE_ID" VARCHAR2(100 BYTE) NOT NULL 
)
LOGGING
NOCOMPRESS
NOCACHE

;

-- ----------------------------
-- Table structure for SYS_ROLES_MODULES
-- ----------------------------
DROP TABLE "SYS_ROLES_MODULES";
CREATE TABLE "SYS_ROLES_MODULES" (
"ID" VARCHAR2(100 BYTE) NOT NULL ,
"MODULE_ID" VARCHAR2(100 BYTE) NOT NULL ,
"ROLE_ID" VARCHAR2(100 BYTE) NOT NULL 
)
LOGGING
NOCOMPRESS
NOCACHE

;
COMMENT ON TABLE "SYS_ROLES_MODULES" IS '控制角色对模块的访问权,主要用于生成菜单';

-- ----------------------------
-- Records of SYS_ROLES_MODULES
-- ----------------------------

-- ----------------------------
-- Table structure for SYS_USERS
-- ----------------------------
DROP TABLE "SYS_USERS";
CREATE TABLE "SYS_USERS" (
"USER_ID" VARCHAR2(100 BYTE) NOT NULL ,
"USERNAME" VARCHAR2(100 BYTE) NOT NULL ,
"NAME" VARCHAR2(100 BYTE) NULL ,
"PASSWORD" VARCHAR2(100 BYTE) NOT NULL ,
"DT_CREATE" DATE DEFAULT SYSDATE  NULL ,
"LAST_LOGIN" DATE NULL ,
"DEADLINE" DATE NULL ,
"LOGIN_IP" VARCHAR2(100 BYTE) NULL ,
"V_QZJGID" VARCHAR2(100 BYTE) NULL ,
"V_QZJGMC" VARCHAR2(100 BYTE) NULL ,
"DEP_ID" VARCHAR2(100 BYTE) NULL ,
"DEP_NAME" VARCHAR2(100 BYTE) NULL ,
"ENABLED" NUMBER NULL ,
"ACCOUNT_NON_EXPIRED" NUMBER NULL ,
"ACCOUNT_NON_LOCKED" NUMBER NULL ,
"CREDENTIALS_NON_EXPIRED" NUMBER NULL 
)
LOGGING
NOCOMPRESS
NOCACHE

;

-- ----------------------------
-- Table structure for SYS_USERS_ROLES
-- ----------------------------
DROP TABLE "SYS_USERS_ROLES";
CREATE TABLE "SYS_USERS_ROLES" (
"ID" VARCHAR2(100 BYTE) NOT NULL ,
"ROLE_ID" VARCHAR2(100 BYTE) NOT NULL ,
"USER_ID" VARCHAR2(100 BYTE) NOT NULL 
)
LOGGING
NOCOMPRESS
NOCACHE

;


-- ----------------------------
-- Indexes structure for table PERSISTENT_LOGINS
-- ----------------------------

-- ----------------------------
-- Checks structure for table PERSISTENT_LOGINS
-- ----------------------------
ALTER TABLE "PERSISTENT_LOGINS" ADD CHECK ("SERIES" IS NOT NULL);

-- ----------------------------
-- Primary Key structure for table PERSISTENT_LOGINS
-- ----------------------------
ALTER TABLE "PERSISTENT_LOGINS" ADD PRIMARY KEY ("SERIES");

-- ----------------------------
-- Indexes structure for table SYS_AUTHORITIES
-- ----------------------------

-- ----------------------------
-- Checks structure for table SYS_AUTHORITIES
-- ----------------------------
ALTER TABLE "SYS_AUTHORITIES" ADD CHECK ("AUTHORITY_ID" IS NOT NULL);
ALTER TABLE "SYS_AUTHORITIES" ADD CHECK ("AUTHORITY_NAME" IS NOT NULL);

-- ----------------------------
-- Primary Key structure for table SYS_AUTHORITIES
-- ----------------------------
ALTER TABLE "SYS_AUTHORITIES" ADD PRIMARY KEY ("AUTHORITY_ID");

-- ----------------------------
-- Indexes structure for table SYS_AUTHORITIES_RESOURCES
-- ----------------------------

-- ----------------------------
-- Checks structure for table SYS_AUTHORITIES_RESOURCES
-- ----------------------------
ALTER TABLE "SYS_AUTHORITIES_RESOURCES" ADD CHECK ("ID" IS NOT NULL);
ALTER TABLE "SYS_AUTHORITIES_RESOURCES" ADD CHECK ("RESOURCE_ID" IS NOT NULL);
ALTER TABLE "SYS_AUTHORITIES_RESOURCES" ADD CHECK ("AUTHORITY_ID" IS NOT NULL);

-- ----------------------------
-- Primary Key structure for table SYS_AUTHORITIES_RESOURCES
-- ----------------------------
ALTER TABLE "SYS_AUTHORITIES_RESOURCES" ADD PRIMARY KEY ("ID");

-- ----------------------------
-- Indexes structure for table SYS_MODULES
-- ----------------------------

-- ----------------------------
-- Checks structure for table SYS_MODULES
-- ----------------------------
ALTER TABLE "SYS_MODULES" ADD CHECK ("MODULE_ID" IS NOT NULL);
ALTER TABLE "SYS_MODULES" ADD CHECK ("MODULE_NAME" IS NOT NULL);

-- ----------------------------
-- Primary Key structure for table SYS_MODULES
-- ----------------------------
ALTER TABLE "SYS_MODULES" ADD PRIMARY KEY ("MODULE_ID");

-- ----------------------------
-- Indexes structure for table SYS_RESOURCES
-- ----------------------------

-- ----------------------------
-- Checks structure for table SYS_RESOURCES
-- ----------------------------
ALTER TABLE "SYS_RESOURCES" ADD CHECK ("RESOURCE_ID" IS NOT NULL);

-- ----------------------------
-- Primary Key structure for table SYS_RESOURCES
-- ----------------------------
ALTER TABLE "SYS_RESOURCES" ADD PRIMARY KEY ("RESOURCE_ID");

-- ----------------------------
-- Indexes structure for table SYS_ROLES
-- ----------------------------

-- ----------------------------
-- Checks structure for table SYS_ROLES
-- ----------------------------
ALTER TABLE "SYS_ROLES" ADD CHECK ("ROLE_ID" IS NOT NULL);

-- ----------------------------
-- Primary Key structure for table SYS_ROLES
-- ----------------------------
ALTER TABLE "SYS_ROLES" ADD PRIMARY KEY ("ROLE_ID");

-- ----------------------------
-- Indexes structure for table SYS_ROLES_AUTHORITIES
-- ----------------------------

-- ----------------------------
-- Checks structure for table SYS_ROLES_AUTHORITIES
-- ----------------------------
ALTER TABLE "SYS_ROLES_AUTHORITIES" ADD CHECK ("ID" IS NOT NULL);
ALTER TABLE "SYS_ROLES_AUTHORITIES" ADD CHECK ("AUTHORITY_ID" IS NOT NULL);
ALTER TABLE "SYS_ROLES_AUTHORITIES" ADD CHECK ("ROLE_ID" IS NOT NULL);

-- ----------------------------
-- Primary Key structure for table SYS_ROLES_AUTHORITIES
-- ----------------------------
ALTER TABLE "SYS_ROLES_AUTHORITIES" ADD PRIMARY KEY ("ID");

-- ----------------------------
-- Indexes structure for table SYS_ROLES_MODULES
-- ----------------------------

-- ----------------------------
-- Checks structure for table SYS_ROLES_MODULES
-- ----------------------------
ALTER TABLE "SYS_ROLES_MODULES" ADD CHECK ("ID" IS NOT NULL);
ALTER TABLE "SYS_ROLES_MODULES" ADD CHECK ("MODULE_ID" IS NOT NULL);
ALTER TABLE "SYS_ROLES_MODULES" ADD CHECK ("ROLE_ID" IS NOT NULL);

-- ----------------------------
-- Primary Key structure for table SYS_ROLES_MODULES
-- ----------------------------
ALTER TABLE "SYS_ROLES_MODULES" ADD PRIMARY KEY ("ID");

-- ----------------------------
-- Indexes structure for table SYS_USERS
-- ----------------------------

-- ----------------------------
-- Checks structure for table SYS_USERS
-- ----------------------------
ALTER TABLE "SYS_USERS" ADD CHECK ("USER_ID" IS NOT NULL);
ALTER TABLE "SYS_USERS" ADD CHECK ("USERNAME" IS NOT NULL);
ALTER TABLE "SYS_USERS" ADD CHECK ("PASSWORD" IS NOT NULL);

-- ----------------------------
-- Primary Key structure for table SYS_USERS
-- ----------------------------
ALTER TABLE "SYS_USERS" ADD PRIMARY KEY ("USER_ID");

-- ----------------------------
-- Indexes structure for table SYS_USERS_ROLES
-- ----------------------------

-- ----------------------------
-- Checks structure for table SYS_USERS_ROLES
-- ----------------------------
ALTER TABLE "SYS_USERS_ROLES" ADD CHECK ("ID" IS NOT NULL);
ALTER TABLE "SYS_USERS_ROLES" ADD CHECK ("ROLE_ID" IS NOT NULL);
ALTER TABLE "SYS_USERS_ROLES" ADD CHECK ("USER_ID" IS NOT NULL);

-- ----------------------------
-- Primary Key structure for table SYS_USERS_ROLES
-- ----------------------------
ALTER TABLE "SYS_USERS_ROLES" ADD PRIMARY KEY ("ID");


-- ----------------------------
-- Foreign Key structure for table "SYS_AUTHORITIES_RESOURCES"
-- ----------------------------
ALTER TABLE "SYS_AUTHORITIES_RESOURCES" ADD FOREIGN KEY ("AUTHORITY_ID") REFERENCES "SYS_AUTHORITIES" ("AUTHORITY_ID");
ALTER TABLE "SYS_AUTHORITIES_RESOURCES" ADD FOREIGN KEY ("RESOURCE_ID") REFERENCES "SYS_RESOURCES" ("RESOURCE_ID");

-- ----------------------------
-- Foreign Key structure for table "SYS_RESOURCES"
-- ----------------------------
ALTER TABLE "SYS_RESOURCES" ADD FOREIGN KEY ("MODULE_ID") REFERENCES "SYS_MODULES" ("MODULE_ID");

-- ----------------------------
-- Foreign Key structure for table "SYS_ROLES_AUTHORITIES"
-- ----------------------------
ALTER TABLE "SYS_ROLES_AUTHORITIES" ADD FOREIGN KEY ("AUTHORITY_ID") REFERENCES "SYS_AUTHORITIES" ("AUTHORITY_ID");
ALTER TABLE "SYS_ROLES_AUTHORITIES" ADD FOREIGN KEY ("ROLE_ID") REFERENCES "SYS_ROLES" ("ROLE_ID");

-- ----------------------------
-- Foreign Key structure for table "SYS_ROLES_MODULES"
-- ----------------------------
ALTER TABLE "SYS_ROLES_MODULES" ADD FOREIGN KEY ("MODULE_ID") REFERENCES "SYS_MODULES" ("MODULE_ID");
ALTER TABLE "SYS_ROLES_MODULES" ADD FOREIGN KEY ("ROLE_ID") REFERENCES "SYS_ROLES" ("ROLE_ID");

-- ----------------------------
-- Foreign Key structure for table "SYS_USERS_ROLES"
-- ----------------------------
ALTER TABLE "SYS_USERS_ROLES" ADD FOREIGN KEY ("ROLE_ID") REFERENCES "SYS_ROLES" ("ROLE_ID");
ALTER TABLE "SYS_USERS_ROLES" ADD FOREIGN KEY ("USER_ID") REFERENCES "SYS_USERS" ("USER_ID");

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 很抱歉,我是AI语言模型,无法回答关于“狂神说springsecurity笔记”的问题。但我可以告诉你,Spring Security是一个基于Spring框架的安全框架,用于保护Web应用程序。它提供了身份验证、授权、攻击防护等功能,可以帮助开发人员构建安全可靠的Web应用程序。狂神是一位知名的Java技术博主,他在自己的博客和视频中分享了很多关于Spring Security的知识和经验。如果你想学习Spring Security,可以参考他的笔记和教程。 ### 回答2: Spring Security 是一个强大的开源安全框架,用于保护 Spring 应用程序。它提供了一系列的安全服务,例如身份验证(Authentication)、授权(Authorization)、密码加密、会话管理等。 狂神在他的 Spring Security 笔记中详细介绍了该框架的使用方式和相关概念。首先,他解释了身份验证的重要性,提及了不同的身份验证方法,如基于表单的认证、基于记住我(Remember Me)的认证以及基于 HTTP Basic 和 Digest 验证等。他还介绍了如何自定义认证过程和处理认证失败的方法。 其次,狂神介绍了授权的概念和不同的授权方式。他解释了基于角色(Role)的访问控制和基于资源(Resource)的访问控制,并示范了如何在 Spring Security 中实现这些授权方式。他还介绍了如何使用注解和表达式来简化授权配置。 此外,狂神还介绍了 Spring Security 提供的其他功能,如密码加密、会话管理、防止跨站点请求伪造(CSRF)攻击等。他指导读者如何使用这些功能来增强应用程序的安全性。 总的来说,狂神的 Spring Security 笔记对于初学者来说是一个很好的入门指南。他提供了丰富的示例代码和详细解释,让读者可以很容易地理解和使用 Spring Security。无论是开发 Web 应用程序还是企业级应用程序,掌握 Spring Security 都是非常重要的,狂神的笔记提供了一个很好的起点。 ### 回答3: spring security 是一个开源的安全框架,可以为应用程序提供身份验证和授权管理的功能。它基于 JavaEE 标准认证和授权机制,并提供了一套更灵活的安全性管理机制。 首先,Spring Security 实现了用户认证的功能,可以通过多种认证方式来验证用户的身份,包括基于数据库的认证、LDAP 认证、OAuth2 认证等。可以根据具体的需求选择使用不同的认证方式。 其次,Spring Security 提供了授权管理的功能,可以设置不同的权限角色,对不同的用户进行授权。可以通过配置的方式进行权限的控制,通过注解或者编程的方式进行细粒度的控制,可以灵活地满足不同的应用需求。 另外,Spring Security 还提供了许多其他的安全支持功能,如防止 CSRF 攻击、防止点击劫持、防止 SQL 注入等。它还支持与其他框架的集成,如与 Spring Boot、Spring MVC 的集成,可以方便地在现有的应用中集成安全功能。 Spring Security 的架构清晰,易于理解和使用。它的设计模式和扩展机制可以满足不同级别的定制需求,使得我们可以根据实际情况来灵活地进行使用和扩展。同时,Spring Security 还提供了丰富的文档和示例代码,方便开发者学习和使用。 总之,Spring Security 是一个功能强大且灵活的安全框架,可以在应用程序中实现身份验证和授权管理的功能。通过使用 Spring Security,我们可以有效地保护和管理我们的应用程序,提升系统的安全性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值