最近有个项目需要,采用安全认证控件。 原本想用SS,刚好看到网友在讨论一个新的安全框架。Apache Shiro,看了一下官方文档,觉得还不错。 干脆就一试。 发现,还有很多小细节,官网没有给出。可能是刚刚从JSecurity接手,也刚出到1.2,还没有太多资源。
在此,根据本项目实践。 将这个新的安全框架中遇到的问题。一一罗列。 仅供参考。
今天发现,采用Form 过滤器认证,需要采用“POST”方法,这个是启动表单认证的条件。在源码中有写到。
/**
174 * This default implementation merely returns <code>true</code> if the request is an HTTP <code>POST</code>,
175 * <code>false</code> otherwise. Can be overridden by subclasses for custom login submission detection behavior.
176 *
177 * @param request the incoming ServletRequest
178 * @param response the outgoing ServletResponse.
179 * @return <code>true</code> if the request is an HTTP <code>POST</code>, <code>false</code> otherwise.
180 */
181 @SuppressWarnings({"UnusedDeclaration"})
182 protected boolean isLoginSubmission(ServletRequest request, ServletResponse response) {
183 return (request instanceof HttpServletRequest) && WebUtils.toHttp(request).getMethod().equalsIgnoreCase(POST_METHOD);
184 }
185
Shiro的登录默认页为login.jsp ,成功登录跳转页面为"/",退出登录,只需要指定该路径为logout过滤器即可。 这些也可以在ini配置中修改。
[main]
authc.successUrl=/content.html
authc.loginUrl=/log.jsp
[users]
admin= admin
[urls]
/index.html = anon
/logout=logout
/** = authc
分享到:
相关推荐
Shiro提供了多种认证策略,包括但不限于基于用户名和密码的认证、记住我认证、表单认证、JAAS集成等。在Shiro中,认证通常通过提交一个AuthenticationToken来完成,如用户名/密码的Token,然后由SecurityManager通过...
Shiro提供了一套灵活的身份验证机制,可以处理基于表单的登录、API令牌等多种认证方式。 2. **授权(Authorization)**:授权是决定已认证的用户可以访问哪些资源或执行哪些操作的过程。Shiro支持角色和权限的粒度...
Apache Shiro 是一个强大且易用的 Java 安全框架,提供认证、授权、加密和会话管理功能,可简化开发并为应用提供强大的安全控制。在这个“shiro的基本使用”教程中,我们将深入理解 Shiro 的核心概念,并通过一个名...
Apache Shiro 是一个强大且易用的 Java 安全框架,它提供了认证、授权、加密和会话管理功能,可以非常方便地为 Web 应用程序提供安全性。在这个"shirodemo实现web登陆"的项目中,我们将探讨如何利用 Shiro 框架在 ...
Apache Shiro 是一个强大且易用的 Java 安全框架,它提供了认证、授权、加密和会话管理功能,简化了开发人员处理安全的复杂性。在这个“Shiro应用实例2”中,我们将深入探讨如何在 Web 应用中集成 Shiro 进行用户...
Apache Shiro 是一个强大且易用的Java安全框架,提供了身份认证、授权、加密和会话管理功能,简化了企业级应用的安全实现。本示例("Shirodemo安全框架")将帮助我们深入理解Shiro的核心概念和使用方法。 **1. 身份...
Apache Shiro 是一个强大且易用的 Java 安全框架,提供身份认证、授权、会话管理和加密等核心功能,广泛应用于 Web 开发中。"shiroweb案例"是针对 Shiro 在 Web 开发中的应用进行的一个简单介绍,旨在帮助初学者快速...
具体实现时,通常会在Spring配置文件中定义Shiro的安全拦截器,比如使用`FormAuthenticationFilter`进行表单登录,`RolesAuthorizationFilter`进行角色权限检查。在Shiro配置中,可以定义用户、角色和权限的关系,...
1. **Filter配置**:Shiro通过Web Filter实现安全控制,我们需要在`web.xml`中配置Shiro的过滤器,如`FormAuthenticationFilter`用于表单登录,`AuthorizationFilter`用于权限校验。 2. ** Realm配置**:在Spring ...
Shiro 提供了一系列的过滤器,如 "authc"(用于处理表单登录)、"roles"(检查用户角色)、"perms"(检查用户权限)。这些过滤器可以组合并映射到特定的URL,从而实现细粒度的访问控制。 在实际的代码实现中,你...
Shiro 提供了多种方式实现身份验证,如基于表单的认证、基于令牌的认证等。 2. **授权(Authorization)**:授权是确定用户是否有执行特定操作的权限。Shiro 提供了角色和权限的概念,可以通过配置或者编程方式来...
在实际应用中,我们还需要编写登录和登出的控制器,以及处理用户认证的表单。登录时,我们可以调用 Shiro 的 `Subject.login()` 方法,将认证信息提交给 SecurityManager 进行验证: ```java @RequestMapping(value...
Shiro提供了一套简洁且强大的API,用于处理认证、授权、会话管理和安全加密等任务。SpringBoot则简化了Spring应用的初始化和配置过程,使得Shiro的集成变得更加简便。 首先,我们要理解SpringBoot的核心特性:自动...
- **Filter**:Shiro提供了一系列的Web Filter,如`FormAuthenticationFilter`用于表单登录,`AuthorizationFilter`用于权限控制。 - **Subject**:Shiro的核心接口,代表当前用户的安全主体,可以获取其权限、角色...
以上就是关于"Spring MVC 整合 Shiro"的知识点详解,涵盖了Shiro和Spring MVC的基本概念,整合过程,以及实际应用中的常见操作。通过这样的整合,开发者可以轻松实现一个功能完善的权限控制系统,确保Web应用的安全...
Apache Shiro 是一个强大且易用的 Java 安全框架,提供身份认证、授权、会话管理和缓存管理等核心功能。它简化了在 Java 应用程序中处理安全性的工作,使得开发者能够更加专注于业务逻辑的实现。下面将对 Shiro 框架...
- **过滤器链**:配置了各种Shiro过滤器,如`FormAuthenticationFilter`(表单登录)和`PermissionsAuthorizationFilter`(权限控制)。 - **控制器**:`UserController.java`等展示了如何在Controller层调用Shiro的...
**Shiro** 是Apache提供的一个安全框架,主要用于身份认证、授权、会话管理和加密。在SpringMVC应用中,Shiro可以帮助实现用户登录、权限控制、记住我功能等。Shiro的API简洁,易于理解和集成,可以快速为应用添加...
在用户提交登录表单后,Shiro将使用配置好的`JdbcRealm`来验证用户提供的凭据是否正确。如果验证通过,Shiro将创建一个会话,其中包含了用户的身份信息和角色。 前端页面`login.jsp`负责显示登录表单,而`index.jsp...