sa-token-rust 是一个轻量级、高性能的 Rust 认证授权框架

💡 原文中文,约14800字,阅读约需36分钟。
📝

内容提要

sa-token-rust是一个高性能的Rust认证授权框架,灵感来源于Java的sa-token,支持多种Web框架,提供完整的认证和授权解决方案,特点是轻量、高效、易用,适合快速构建安全Web应用。

🎯

关键要点

  • sa-token-rust 是一个高性能的 Rust 认证授权框架,灵感来源于 Java 的 sa-token。
  • 该框架专为 Rust Web 应用设计,提供完整的认证和授权解决方案。
  • 特点包括轻量、高效、易用,适合快速构建安全 Web 应用。
  • 支持多种 Web 框架,如 Axum、Actix-web、Poem、Rocket 等。
  • 提供完整的认证功能,包括登录、登出、Token 验证和 Session 管理。
  • 支持细粒度授权,基于权限和角色的访问控制。
  • 灵活存储选项,包括内存、Redis 和数据库存储后端。
  • 易于使用,提供过程宏和工具类简化集成。
  • 高性能设计,支持异步/等待(async/await)和零拷贝。
  • 高度可配置,支持 Token 超时、Cookie 选项和自定义 Token 名称。
  • 支持事件监听,能够监听登录、登出和踢出下线等事件。
  • 实现完整的 JWT 支持,支持多种算法。
  • 提供安全特性,如 Nonce 防重放攻击和 Refresh Token 刷新机制。
  • 实现完整的 OAuth2 授权码模式。
  • 支持 WebSocket 认证,确保安全的 WebSocket 连接。
  • 提供在线用户管理和实时在线状态跟踪。
  • 支持分布式 Session,适用于微服务架构。
  • 实现完整的 SSO 单点登录,支持票据认证和统一登出。
  • 采用分层设计理念,核心层与具体 Web 框架无关,保证核心功能的复用性。
  • 核心组件包括 sa-token-core、sa-token-adapter 和 sa-token-macro。
  • 支持多种 Token 风格,满足不同场景需求。
  • 提供安全特性示例,包括 Nonce 和 Refresh Token 机制。
  • 提供 OAuth2 授权和 SSO 单点登录的完整实现。
  • 项目地址为 https://github.com/llc-993/sa-token-rust。
➡️

继续阅读