0

这是请求映射表包含的内容:

'/', '/index', '/index.gsp', '/**/favicon.ico',
  '/assets/**', '/**/js/**', '/**/css/**', '/**/images/**',
  '/login', '/login.*', '/login/*',
  '/logout', '/logout.*', '/logout/*']

但是没有加载静态资源login page。每个对静态资源的请求都会重定向到login/auth.

4

2 回答 2

0

在我的(Spring Security 2.0-RC4)应用程序中,我有:

grails.plugin.springsecurity.controllerAnnotations.staticRules = [
    '/'                 : ['permitAll'],
    '/searchable/**'    : ['permitAll'],
    '/index'            : ['permitAll'],
    '/index.gsp'        : ['permitAll'],
    '/assets/**'        : ['permitAll'],
    '/**/js/**'         : ['permitAll'],
    '/**/css/**'        : ['permitAll'],
    '/**/images/**'     : ['permitAll'],
    '/**/favicon.ico'   : ['permitAll']
]

那是没有问题的。请注意,我使用注释。

看起来好像您使用了请求映射,并且从我读到的文档中您可能会创建这样的请求映射:

for (String url in [
  '/', '/index', '/index.gsp', '/**/favicon.ico',
  '/assets/**', '/**/js/**', '/**/css/**', '/**/images/**',
  '/login', '/login.*', '/login/*',
  '/logout', '/logout.*', '/logout/*']) {
       new Requestmap(url: url, configAttribute: 'permitAll').save()
   }

也许您应该考虑进行 save(failOnError: true) 以确保您的 requestmap 表中确实有数据。

于 2014-11-04T07:08:55.260 回答
0

显然,您使用请求映射。所以看看 Using Spring Security and Requestmap failed in Grails

除了确保您的 requestmap 正常之外,您还可以刷新您的 requestmap,例如:

new Requestmap(url: '/login/**', configAttribute: 'permitAll').save(flush: true, failOnError: true)
于 2015-04-12T11:44:36.663 回答