`
peterwanghao
  • 浏览: 123484 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Apache Shiro Web应用会话管理

阅读更多

 

Servlet容器会话管理

Web环境中,Shiro默认的会话管理器SessionManager 的实现是ServletContainerSessionManager。这个实现只是简单的封装了Servlet容器,包括会话集群功能。它的本质是Shiro Session APIServlet容器之间的一个桥梁。

使用这个默认实现的好处是,应用程序将使用现有的servlet容器的会话配置,例如超时,基于特定容器的集群机制等。缺点是你的应用程序依赖于特定servlet容器的会话处理将不适合移植。

如果使用缺省的servlet容器配置,在Web.xml文件里可配置Session超时。例如:

<session-config>

  <!-- web.xml expects the session timeout in minutes: -->

  <session-timeout>30</session-timeout>

</session-config>

本地会话管理

如果你想要特定的会话管理/集群功能,并且可以在不同的servlet容器移植。你可以Shiro本地的会话管理。“本地”的意思是Shiro自己实现的企业级会话管理支持所有的SubjectHttpServletRequest会话。但请放心,Shiro实现的会话管理符合servlet规范,现有的Web/HTTP相关代码不需要修改。

如想使用Shiro本地的会话管理,需要在shiro.ini进行配置:

[main]

...

sessionManager = org.apache.shiro.web.session.mgt.DefaultWebSessionManager

# configure properties (like session timeout) here if desired

 

# Use the configured native session manager:

securityManager.sessionManager = $sessionManager

一旦声明,你就可以配置DefaultWebSessionManager的实例,配置方法可参考“会话管理”部分中所描述的集群配置与本地会话选项。

比如,session超时设置:

[main]

...

# 3,600,000 milliseconds = 1 hour

securityManager.sessionManager.globalSessionTimeout = 3600000

 

DefaultWebSessionManager支持两种配置特性的Session Cookie

sessionIdCookieEnabled (a boolean)

sessionIdCookie, a Cookie instance.

DefaultWebSessionManagersessionIdCookie缺省实例是SimpleCookie。这个实现符合JavaBeans风格的属性配置,可以让所有相关的属性配置成一个Http Cookie。例如,你可以设置Cookie域:

[main]

...

securityManager.sessionManager.sessionIdCookie.domain = foo.com

Cookie的默认名称是JSESSIONID。此外,Shirocookie支持HttpOnly flag

如果你不想使用会话cookie,你可以将sessionIdCookieEnabled的属性设置为false。例如:

[main]

...

securityManager.sessionManager.sessionIdCookieEnabled = false

分享到:
评论

相关推荐

    让Apache Shiro保护你的应用

    Apache Shiro(发音为“shee-roh”,日语“堡垒(Castle)”的意思)是一个强大易用的Java安全框架,提供了认证、授权、加密和会话管理功能,可为任何应用提供安全保障 - 从命令行应用、移动应用到大型网络及企业...

    Apache Shiro中文开发文档.pdf

    Apache Shiro 是一个强大而灵活的开源安全框架,它干净利落地处理身份认证,授权,企业会话管理和加密。 Apache Shiro 的首要目标是易于使用和理解。安全有时候是很复杂的,甚至是痛苦的,但它没有必要这样。框架...

    Apache Shiro核心jar包:shiro-core-1.3.2

    Apache Shiro是一个强大易用的Java安全框架,提供了认证、授权、加密和会话管理等功能。 使用Shiro的易于理解的API,您可以快速、轻松地获得任何应用程序,从最小的移动应用程序到最大的网络和企业应用程序。

    SpringBoot + Apache Shiro1.9.1 最新版本详细教程,基于RBAC角色访问、安全管理框架、用户角色权限

    4、优点:快速上手、全面支持验证、授权、加密和会话、灵活自定义设计、支持web环境、可以无缝集成spring等优点。可以用来用户验证、用户授权、用户session管理、安全加密等 5、基于RBAC五张表:用户表 tb_user、...

    Apache_Shiro参考手册中文版.zip

    Apache Shiro 是一个强大而灵活的开源安全框架,它干净利落地处理身份认证,授权,企业会话管理和加密。 Apache Shiro 的首要目标是易于使用和理解。安全有时候是很复杂的,甚至是痛苦的,但它没有必要这样。框架应 ...

    Apache Shiro是Java的一个安全框架。帮助我们完成:认证、授权、加密、会话管理、与Web集成、缓存等。

    Apache Shiro是Java的一个安全框架。帮助我们完成:认证、授权、加密、会话管理、与Web集成、缓存等。

    Apache Shiro安全框架-其他

    Apache Shiro(发音为“shee-roh”,日语为“castle”)是一种功能强大且易于使用的Java安全框架,可执行身份验证,授权,加密和会话管理,可用于保护任何应用程序的安全-从命令行应用程序,移动应用程序到最大的Web...

    shiro-web-1.3.2.jar包

    Apache Shiro是Java的一个安全框架,旨在简化身份验证和授权。Shiro在JavaSE和JavaEE项目中都可以使用。它主要用来处理身份认证,授权,企业会话管理和加密等。

    ShiroSamples:Apache Shiro示例

    Apache Shiro是一个强大而灵活的开源安全框架,可以简明地处理身份验证,授权,企业会话管理和加密。 Apache Shiro最初的目标是易于使用和理解。安全有时候会很复杂,甚至令人痛苦,但没必要。一个框架应该替换隐藏...

    shiro 1.4.1.rar

    Apache Shiro 是 Java 的一个安全框架。目前,使用 Apache Shiro 的人越来越多...Shiro 可以帮助我们完成:认证、授权、加密、会话管理、与 Web 集成、缓存等。这不就是我们想要的嘛,而且 Shiro 的 API 也是非常简单.

    apache-shiro-1-2-x-reference

    Apache Shiro是一个功能强大、灵活的开放式安全框架,干净利落地处理身份验证、授权...Shiro可以帮助我们完成:认证、授权、加密、会话管理、与Web集成、缓存等。 【apache-shiro-1-2-x-reference,"waylau"翻译自官网】

    Apache-Shiro-中文参考文档.docx

    Apache Shiro 是一个强大而灵活的开源安全框架,它干净利落地处理身份认证,授权,企业会话管理和加密。 Apache Shiro 的首要目标是易于使用和理解。安全有时候是很复杂的,甚至是痛苦的,但它没有必要这样。框架...

    Apache_Shiro

    Apache Shiro 是一个强大而灵活的开源安全框架,它干净利落地处理身份认证,授权,企业会话管理和加密。 Apache Shiro 的首要目标是易于使用和理解。安全有时候是很复杂的,甚至是痛苦的,但它没有必要这样。框架应 ...

    Shiro 视频教程+源码+课件

    内容涵盖 Shiro 认证、加密、授权、安全标签、安全注解、会话管理、缓存、Rememberme 等 JavaEE 企业级开发的核心技术。视频讲授过程中通过分析源代码使学员知其然更知其所以然。 【课程内容】 第一章 问候 Shiro ...

    shiro 1.4.0所有jar包(全)

    Apache Shiro是一个强大易用的Java安全框架,提供了认证、授权、加密和会话管理等功能。 使用Shiro的易于理解的API,您可以快速、轻松地获得任何应用程序,从最小的移动应用程序到最大的网络和企业应用程序。

    最详细Shiro学习资料(源码)

    Shiro(Apache Shiro)是一个强大且易于使用的Java安全框架,用于身份验证、授权、加密和会话管理等安全功能。它提供了简单的API和灵活的配置选项,可以方便地集成到现有的Java应用程序中。 Shiro的主要特点包括: ...

    Shiro+SSM+SpringBoot.pdf

    Apache Shiro 是 Java 的一个安全框架。目前,使用 Apache Shiro 的人越来越多,...Shiro 可以帮助我们完成:认证、授权、加密、会话管理、与 Web 集成、缓存等。这不就是我们想要的嘛,而且 Shiro 的 API 也是非常简单

    Shiro开发文档

    Apache Shiro 是 Java 的一个安全框架。...Shiro 可以帮助我们完成:认证、授权、加密、会话管理、与 Web 集成、缓 存等。这不就是我们想要的嘛,而且 Shiro 的 API 也是非常简单;其基本功能点如下图所 示:

    简单配置 shiro + spring +springMVC+hibernate简单框架

    SpringMVC整合Shiro,Shiro是一个强大易用的Java安全框架,提供了认证、授权、加密和会话管理等功能。 配置applicationContext-shiro.xml 1. 配置authorizingRealm ...

Global site tag (gtag.js) - Google Analytics