Expand description
§sa-token-plugin-actix-web
Actix-web框架集成插件 - 一站式认证授权解决方案
§快速开始
只需要导入这一个包,即可使用所有功能:
[dependencies]
sa-token-plugin-actix-web = "0.1.3" # 默认使用内存存储
# 或者使用 Redis 存储
sa-token-plugin-actix-web = { version = "0.1.3", features = ["redis"] }§使用示例
ⓘ
use sa_token_plugin_actix_web::*;
// 1. 初始化(使用内存存储)
let state = SaTokenState::builder()
.storage(Arc::new(MemoryStorage::new())) // 已重新导出
.timeout(7200)
.build();
// 2. 登录
let token = state.manager().login("user123").await?;
// 3. 使用宏检查权限
#[sa_check_login]
async fn user_info() -> impl Responder {
"User info"
}
#[sa_check_permission("admin")]
async fn admin_panel() -> impl Responder {
"Admin panel"
}Re-exports§
pub use middleware::SaTokenMiddleware;pub use middleware::SaCheckLoginMiddleware;pub use extractor::SaTokenExtractor;pub use extractor::OptionalSaTokenExtractor;pub use extractor::LoginIdExtractor;pub use adapter::ActixRequestAdapter;pub use adapter::ActixResponseAdapter;
Modules§
- adapter
- Actix-web请求/响应适配器
- extractor
- Actix-web提取器
- middleware
- Actix-web中间件
Structs§
- Access
Token - Access Token Response | 访问令牌响应
- Authorization
Code - Authorization Code | 授权码
- Default
WsToken Extractor - Default token extractor implementation 默认的 Token 提取器实现
- Distributed
Session - Distributed session data structure 分布式 Session 数据结构
- Distributed
Session Manager - Distributed session manager 分布式 Session 管理器
- InMemory
Distributed Storage - In-memory distributed session storage implementation 内存分布式 Session 存储实现
- InMemory
Pusher - In-memory message pusher implementation 内存消息推送器实现
- JwtClaims
- JWT Claims | JWT 声明
- JwtManager
- JWT Manager | JWT 管理器
- Logging
Listener - 简单的日志监听器示例
- Memory
Storage - 内存存储(默认启用) 内存存储实现
- Nonce
Manager - Nonce Manager | Nonce 管理器
- OAuth2
Client - OAuth2 Client Information | OAuth2 客户端信息
- OAuth2
Manager - OAuth2 Manager | OAuth2 管理器
- OAuth2
Token Info - OAuth2 Token Information (for storage) | OAuth2 令牌信息(用于存储)
- Online
Manager - Online user manager 在线用户管理器
- Online
User - Online user information 在线用户信息
- Push
Message - Push message structure 推送消息结构
- Refresh
Token Manager - Refresh Token Manager | Refresh Token 管理器
- SaSession
- Session 对象 | Session Object
- SaToken
Config - sa-token 配置
- SaToken
Event - 事件数据
- SaToken
Event Bus - 事件总线 - 管理所有监听器并分发事件
- SaToken
Manager - sa-token 管理器
- SaToken
State - 应用状态
- SaToken
State Builder - 状态构建器
- Service
Credential - Service credential for inter-service authentication 服务间认证的服务凭证
- StpUtil
- StpUtil - 权限认证工具类
- Token
Info - Token 信息 | Token Information
- Token
Value - Token 值
- WsAuth
Info - WebSocket authentication information WebSocket 认证信息
- WsAuth
Manager - WebSocket authentication manager WebSocket 认证管理器
Enums§
- JwtAlgorithm
- JWT Algorithm | JWT 算法
- Message
Type - Message type enumeration 消息类型枚举
- SaToken
Error - Token
Style - Token 风格 | Token Style
Traits§
- Distributed
Session Storage - Distributed session storage trait 分布式 Session 存储 trait
- Framework
Adapter - 框架适配器trait
- Message
Pusher - Message pusher trait 消息推送器 trait
- Permission
Checker - 权限检查器 | Permission Checker
- SaStorage
- 存储适配器trait
- SaToken
Listener - 事件监听器 trait | Event Listener Trait
- WsToken
Extractor - Token extractor trait for WebSocket connections WebSocket 连接的 Token 提取器 trait
Type Aliases§
- SaToken
Data - Actix-web应用数据
Attribute Macros§
- sa_
check_ login - 检查登录状态的宏
- sa_
check_ permission - 检查权限的宏
- sa_
check_ permissions_ and - 同时检查多个权限(AND逻辑)
- sa_
check_ permissions_ or - 同时检查多个权限(OR逻辑)
- sa_
check_ role - 检查角色的宏
- sa_
check_ roles_ and - 同时检查多个角色(AND逻辑)
- sa_
check_ roles_ or - 同时检查多个角色(OR逻辑)
- sa_
ignore - 忽略认证检查的宏