在 Grails 中支持基本身份验证和基于表单的身份验证

Posted

技术标签:

【中文标题】在 Grails 中支持基本身份验证和基于表单的身份验证【英文标题】:supporting Basic Auth and Form based Authenticaion in Grails 【发布时间】:2012-07-12 15:33:25 【问题描述】:

我需要为使用 grails 1.3.6 的应用程序支持基本身份验证和基于表单的身份验证。是否可以使用 Spring Security 来做到这一点?现在我确实有适用于应用程序的基于表单的身份验证,我还需要做些什么才能支持两者?还是不可能?

【问题讨论】:

【参考方案1】:

是的,Spring Security 可以支持基本身份验证以及基于表单的身份验证。要允许特定 URL 或模式的基本身份验证,您可以添加以下配置:

grails.plugins.springsecurity.useBasicAuth = true
grails.plugins.springsecurity.basic.realmName = "My App Name"
grails.plugins.springsecurity.filterChain.chainMap = [
    '/someController/someAction': 'JOINED_FILTERS,-exceptionTranslationFilter',
    '/**': 'JOINED_FILTERS,-basicAuthenticationFilter,-basicExceptionTranslationFilter'
]

【讨论】:

你很好地从文档中复制/粘贴;)grails-plugins.github.com/grails-spring-security-core/docs/… 是吗?我从我的应用程序中复制了它,显然是从文档中复制的一次:) 快速提问。一切正常的用户正在通过身份验证,但是当我执行基本身份验证时,我的 RememberMeService 代码没有被调用。我是否必须添加任何内容才能执行基本身份验证? 注意不要被jira.grails.org/browse/GPSPRINGSECURITYCORE-210咬到...【参考方案2】:

改变

grails.plugins.**

grails.plugin.**

grails 2.3.9 上没有“s”。

【讨论】:

以上是关于在 Grails 中支持基本身份验证和基于表单的身份验证的主要内容,如果未能解决你的问题,请参考以下文章

AngularJS 和 Grails 中基于角色的用户身份验证

Grails 中基于 RESTful 证书的 (X509) 登录身份验证

使用 Spring security Javaconfig 进行基本和基于表单的身份验证

Grails - Acegi:自定义身份验证方法

Grails Spring Security 在身份验证之前预检查普通密码

基于 JSF 表单的身份验证 + 托管 Bean 登录不起作用