My Spring Boot网络应用程序使用带有spring-boot-security的表单身份验证
我有两张桌子:
用户
CREATE TABLE user
(
id INT(11) PRIMARY KEY NOT NULL AUTO_INCREMENT,
username VARCHAR(255) NOT NULL,
password CHAR(60) NOT NULL,
//...
);
角色
CREATE TABLE role
(
id INT(11) PRIMARY KEY NOT NULL AUTO_INCREMENT,
r_name VARCHAR(45) NOT NULL
);
CREATE UNIQUE INDEX sys_role_r_name_uindex ON sys_role (r_name);
加入表格
CREATE TABLE ref_user_role
(
user_id INT(11) NOT NULL,
role_id INT(11) NOT NULL,
// ...
);
为了添加具有其他角色/权限的更多用户,必须在 sys_role 表中具有角色ROLE_ROOT
。从逻辑上讲,此root用户必须在add-more-users操作之前存在。
我尝试过的是是
我能想到的另一种方式是我只能在应用首次启动时创建根创建页面。除了用户名和密码之外,我还需要一个密码(只有我和应用知道),这样任何其他随机的人都无法创建root帐号。
这些是常见的方法吗?
如果没有,有什么好方法?
答案 0 :(得分:2)
如果您正在使用Spring Boot,那么您所要做的就是将schema.sql和data.sql脚本放在资源类路径中。
schema.sql将负责创建表和它们之间的关联,data.sql将负责使用数据初始化表,因此您可以将插入到表语句中。
当您上传服务时,这些脚本将由Spring Boot自动执行每次上传。
进一步阅读看看: