java - 具有不同类型 session 的 Spring Security

标签 java spring spring-security

我正在使用 spring security 3.1.4,但遇到以下问题。在一个网络应用程序中,我有两种类型的用户,它们具有不同的自定义“UserDetails”实例。如何在 UserDetailsS​​ervice.loadUserByUsername 的实现中区分用户。我可以有 2 个 UserDetailsS​​erviceImpl 并知道何时使用每一个吗?

最佳答案

好吧,我建议你实现composite UserDetailsS​​ervice并对两个数据库一一执行loadUserByUsername。从逻辑上讲,第一个使用的UserDetailsS​​erviceImpl应该是针对普通用户,一旦出现典型情况,管理员用户的数量> 肯定少了。

但是从设计上来说它看起来很糟糕。最好为管理员提供单独的隐藏应用程序,并消除简单用户可能猜测管理员帐户时的一个小漏洞。

关于java - 具有不同类型 session 的 Spring Security,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22895553/

相关文章:

java - Java Futures 的乱序返回

java - Tomcat 使用堆栈而不是队列?为什么使用堆栈而不是队列或其他池更好?

Spring Social - 是否可能,如果可以,如何重写 ConnectController 中的方法?

Spring Framework - 在哪里解析 JWT 以进行自定义声明?

spring - 使用 Spring MVC 和 Hibernate 4.2.0.Final 的 Multi-Tenancy Web 应用程序

java - sql 查询在 Hibernate 中很慢,在 mysql 上很快

java - Eclipse 似乎认为 CSS 文件是 Java 源代码

java - 我们可以有多个数据源到单个数据库吗

java - 在 RowMapper 中使用查询

java - Spring Security - 在 Controller 中获取登录用户 - 礼貌