session - 如何防止Grails 3创建 session ?

标签 session grails spring-security

我有一个Grails 3.1应用程序,并且使用了带有自定义无状态身份验证提供程序的spring安全插件。所有这些都可以,但是当没有 session ,并且创建了 session (带有 session ID cookie)时,我仍然可以重定向到我的登录屏幕。

我该如何指示Spring Security不要使用cookie,或者选择grails禁止创建cookie?我已经看到了一些关于纯Spring安全性的答案,但是使用Grails spring安全性插件,事情似乎有所不同。

最佳答案

Spring Security插件可与过滤器一起使用,可能其中之一是将您重定向到登录页面。我不确定您是如何自定义身份验证的,但是基于Spring Security REST Plugin,您应该从过滤器链中删除不需要的身份验证。

grails.plugin.springsecurity.filterChain.chainMap = [
    //Stateless chain
    [
        pattern: '/api/**',
        filters: 'JOINED_FILTERS,-anonymousAuthenticationFilter,-exceptionTranslationFilter,-authenticationProcessingFilter,-securityContextPersistenceFilter,-rememberMeAuthenticationFilter'
    ],

    //Traditional chain
    [
        pattern: '/**',
        filters: 'JOINED_FILTERS,-restTokenValidationFilter,-restExceptionTranslationFilter'
    ]
]

关于session - 如何防止Grails 3创建 session ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37225747/

相关文章:

java - 我是否需要使用 Google 帐户身份验证而不是 Spring 身份验证来避免 Firesheep cookie 嗅探攻击?

javascript - 意外 session 破坏

grails - 在只读模式(FlushMode.MANUAL)中不允许进行写操作:

grails - 如何将Javassist实例转换为特定域的实例

ajax - 加载部分模板 Ajax - 使用 Grails

spring-security - 使用 Spring Security 3.1.3 自定义 SecurityExpressionRoot 方法

spring-security - @EnableResourceServer : Mapping roles

php - 如何限制成员(member)使用 session 看不到admin_page.php

java - java中 session 变量偶尔丢失

session - Rails 4 跨子域共享 session