我正在使用 Grails 2.2.4 和 Shiro 插件 1.1.4,并且希望将 cookie 标记为安全,以便 session 信息不会通过 http 发送。
我正在寻找 grails 方法来设置此设置,通常在 shiro.ini 中
securityManager.sessionManager.sessionIdCookie.secure = true
打开 JIRA 问题来跟踪此问题: http://jira.grails.org/browse/GPSHIRO-76
最佳答案
另一个选项是从 BootStrap 中的 servletContext 中修补 sessionCookieConfig:
class BootStrap {
def init = { servletContext ->
servletContext.sessionCookieConfig.secure = true
}
}
注意:该选项会导致 grails 2.2.4 集成测试失败并出现 AbstractMethodError。
Error Error executing script TestApp: org.springframework.mock.web.MockServletContext.getSessionCookieConfig()Ljavax/servlet/SessionCookieConfig;
java.lang.AbstractMethodError: org.springframework.mock.web.MockServletContext.getSessionCookieConfig()Ljavax/servlet/SessionCookieConfig;
at BootStrap$_closure1.doCall(BootStrap.groovy:44)
at grails.util.Environment.evaluateEnvironmentSpecificBlock(Environment.java:308)
...
关于security - 如何配置 grails 和 shiro 将 cookie 标记为安全?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19599829/