# athena-security **Repository Path**: mingbaobaba/athena-security ## Basic Information - **Project Name**: athena-security - **Description**: athena-security是一个基于token的轻量级权限认证框架,以简单、优雅为设计目标。主要解决登录认证等一系列权限相关问题。 - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 10 - **Forks**: 0 - **Created**: 2023-08-22 - **Last Updated**: 2025-12-21 ## Categories & Tags **Categories**: authority-management **Tags**: 权限认证框架, 单点登录, OAuth2, 统一认证, 登录认证 ## README # athena-security

athena-security

## 简介 athena-security 是一个基于 token 的轻量级权限认证框架,以简单、优雅为设计目标。主要解决登录认证等一系列权限相关问题。 ## 框架设计 ![功能架构图](https://foruda.gitee.com/images/1695210764207670195/08d6b7b4_442884.png "架构图.png") ## 功能使用 ### 登录认证 ```java // 会话登录 支持单端登录 多端登录 同端互斥登录 SecurityUtil.doLogin("账号"); ``` ### 登录检查 ```java // 检查token SecurityUtil.checkToken(); ``` ### 登录信息 ```java // 获取登录信息 SecurityUtil.getCurrentSecuritySession(); ``` ### 账号封禁 ```java // 对指定token进行封禁操作 SecurityUtil.bannedToken("token值"); ``` ### 账号解封 ```java // 对指定token进行解封操作 SecurityUtil.unsealToken("token值"); ``` ### 踢人下线 ```java // 对指定token进行踢下线操作 SecurityUtil.kickToken("token值"); ``` ### 自动续签 ```java // 框架支持自动续约配置,也可以手动调用进行续约操作 SecurityUtil.renewalToken(); ``` ### 退出登录 ```java // 退出当前登录账号 SecurityUtil.loginOut(); ``` ### 查询列表 ```java // 查询SecuritySession列表 SecurityUtil.querySecuritySessionList(当前页,分页大小); ``` ### 移除操作 ```java // 指定token移除操作 SecurityUtil.removeToken("token值"); ``` ### 临时身份切换 ```java // 临时身份切换 SecurityUtil.identityTempSwitching("登录Id",()->{ // 操作内容 }); ``` ### 权限判断 ```java // 判断是否拥有指定角色 SecurityUtil.hasRole("角色码"); // 判断是否有指定权限码 SecurityUtil.hasPermission("权限码"); ``` ### 权限认证 1. 实现 `SecurityAuthority` 接口 ```java io.gitee.mingbaobaba.security.core.authority.SecurityAuthority ``` 2. 配置拦截器 ```java registry.addInterceptor(new SecurityInterceptor(new SecurityInterceptor(m -> SecurityRouter.build().run(m)))) .addPathPatterns("/**") ``` 3. 添加注解说明 ```java @SecurityIgnore // 忽略认证 @SecurityCheckRole // 检查角色值 @SecurityCheckPermission // 检查权限值 ``` ## 基础集成说明 ### Redis + Spring Boot 集成 ```xml io.gitee.mingbaobaba athena-security-plugin-redis 最新版本 io.gitee.mingbaobaba athena-security-spring-boot-starter 最新版本 ``` ## 接口访问 在请求header头中添加: ``` key:Athena-Authorization value: token值 ``` ## 文档 更多文档说明请访问:https://gitee.com/mingbaobaba/athena-security/wikis/ ## 交流 QQ群:259890823(进群问题答案:Athena-Security) ## 许可证 本项目使用 MIT 许可证。详情请查看 LICENSE 文件。