springBoot继承shiro
时间: 2023-08-31 20:40:15 浏览: 80
### 回答1:
Spring Boot 是一个用于创建和部署独立、生产级别的 Spring 应用程序的框架,而 Apache Shiro 是一个强大且易于使用的 Java 安全框架,提供了认证、授权、加密和会话管理等功能。
在 Spring Boot 应用程序中集成 Shiro,可以通过添加 Shiro Spring Boot Starter 依赖项来实现。此外,您需要配置 Shiro 相关的 Bean,例如 SecurityManager、Realm、Filter 等。您可以使用 Shiro 提供的注解和过滤器来保护您的应用程序资源,并使用 Shiro 提供的身份验证和授权功能来确保只有授权用户才能访问受保护的资源。
总的来说,Spring Boot 集成 Shiro 可以为应用程序提供强大的安全性能和灵活性,使得应用程序开发更加简便和高效。
### 回答2:
在Spring Boot中集成Shiro可以通过以下步骤完成:
1. 导入相关依赖:在pom.xml文件中添加Shiro和Spring Boot相关的依赖。
2. 创建Shiro配置类:创建一个继承自ShiroWebFilterConfiguration的配置类,用于配置Shiro的各种参数和过滤器等。
3. 配置Shiro过滤器链:在上一步创建的配置类中,通过@Bean注解创建ShiroFilterFactoryBean对象,并设置它的相关属性,例如登录url、未授权url等。
4. 创建Realm类:创建一个自定义的Realm类,继承自AuthorizingRealm,并实现其抽象方法,用于进行身份认证和权限授权。
5. 注册Realm类:在上一步创建的配置类中,通过@Bean注解创建Realm对象,并将其注册到SecurityManager中。
6. 配置Shiro的安全管理器:在上一步创建的配置类中,通过@Bean注解创建DefaultWebSecurityManager对象,并设置其相关属性,例如Realm。
7. 配置Spring Boot的安全管理器:创建一个继承自WebSecurityConfigurerAdapter的配置类,覆盖configure方法,将上一步创建的SecurityManager对象设置到WebSecurity中。
8. 配置登录、注销等页面:在application.properties或application.yml文件中配置登录页面、注销页面等。
9. 编写登录页面:创建一个登录页面,用于接收用户输入的用户名和密码。
10. 编写业务代码:在业务代码中使用Shiro的注解进行权限控制,例如@RequiresAuthentication、@RequiresPermissions等。
以上就是在Spring Boot中集成Shiro的大致步骤,通过配置Shiro过滤器链、创建自定义Realm类和安全管理器等,可以实现身份认证和权限控制功能。