java.security.Principal - 在 HttpServletRequest 和 Spring Security 中创建
Posted
技术标签:
【中文标题】java.security.Principal - 在 HttpServletRequest 和 Spring Security 中创建【英文标题】:java.security.Principal - creation in HttpServletRequest and Spring Security 【发布时间】:2012-04-07 04:06:52 【问题描述】:我无法找到 HttpServletRequest 中的 java.security.Principal 是如何创建的 - 谁负责?它是如何完成的?它是否必须保留在 Session 中?
它是如何连接到 Spring Security 的?
是否有任何替代 Spring Security 的替代方案,它使用 Principal 进行用户授权/身份验证?
如何实现自己的用户授权/身份验证,以便 Principal 包含当前用户?
【问题讨论】:
【参考方案1】:-
通常情况下,Principal 对象在成功登录后进入会话。参见documentation。
弹簧
Authentication
接口扩展Principal
接口
您也可以使用Apache Shiro
实现自己的UserDetailsService
,它将返回您的用户对象(它必须实现 UserDetails 接口)参见docs。
【讨论】:
【参考方案2】:Principal 将由 Spring Security 根据您的 Spring Security 配置设置。
要实现这一点,请参阅http://static.springsource.org/spring-security/site/docs/3.1.x/reference/springsecurity.html
【讨论】:
显然我已经看过这个文档,但我的问题是相当笼统的,不依赖于 Spring Security。以上是关于java.security.Principal - 在 HttpServletRequest 和 Spring Security 中创建的主要内容,如果未能解决你的问题,请参考以下文章