spring security 使用hibernate和jsf认证不同的配置文件和权限
Posted
技术标签:
【中文标题】spring security 使用hibernate和jsf认证不同的配置文件和权限【英文标题】:spring security authentication different profiles and permissions with hibernate and jsf 【发布时间】:2015-01-29 16:24:24 【问题描述】:我想使用 Spring Security 对用户进行身份验证。我正在使用 hiebrnate 和 jsf。 问题在于我在网上看到的不同教程中只有一个角色。但就我而言,我有一个具有权限和配置文件的不同数据库
表用户
用户名 个人资料 ID 登录 密码表配置文件
profile_id 个人资料表格操作或权限
action_id 动作 profile_id我想知道是否有人知道如何实现这一点或知道一些好的教程。
【问题讨论】:
【参考方案1】:如果您想管理您的用户角色、组和权限,您可以查看Spring Security documentation about schema。 这里有一些关于上述链接的 sn-ps 和详细信息:
create table users(
username varchar_ignorecase(50) not null primary key,
password varchar_ignorecase(50) not null,
enabled boolean not null);
create table authorities (
username varchar_ignorecase(50) not null,
authority varchar_ignorecase(50) not null,
constraint fk_authorities_users foreign key(username) references users(username));
create unique index ix_auth_username on authorities (username,authority);
create table groups (
id bigint generated by default as identity(start with 0) primary key,
group_name varchar_ignorecase(50) not null);
create table group_authorities (
group_id bigint not null,
authority varchar(50) not null,
constraint fk_group_authorities_group foreign key(group_id) references groups(id));
create table group_members (
id bigint generated by default as identity(start with 0) primary key,
username varchar(50) not null,
group_id bigint not null,
constraint fk_group_members_group foreign key(group_id) references groups(id));
【讨论】:
这样,我必须使用文档中的模式,但对我来说,我想使用我自己的表,就像我之前说的那样。有没有办法做到这一点? 你可以看到他们是如何做的并定制他们的例子 但是在这个例子中,我们只有数据库模式,而不是 spring security 上的例子的实现以上是关于spring security 使用hibernate和jsf认证不同的配置文件和权限的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 Spring Security @Secured 注解测试 Spring Boot @WebFluxTest
Spring Framework,Spring Security - 可以在没有 Spring Framework 的情况下使用 Spring Security?
仅使用 Spring-Security(或)Spring 进行授权
在使用 Oauth、SAML 和 spring-security 的多租户的情况下从 spring-security.xml 中获取错误