28个版本 (14个重大更新)

0.15.3 2024年6月10日
0.15.1 2024年4月10日
0.15.0 2024年3月20日
0.11.3 2023年12月31日
0.4.0 2022年11月28日

#38 in HTTP服务器

Download history · Rust 包仓库 2009/week @ 2024-05-03 · Rust 包仓库 2386/week @ 2024-05-10 · Rust 包仓库 1939/week @ 2024-05-17 · Rust 包仓库 2609/week @ 2024-05-24 · Rust 包仓库 3083/week @ 2024-05-31 · Rust 包仓库 2111/week @ 2024-06-07 · Rust 包仓库 2288/week @ 2024-06-14 · Rust 包仓库 1827/week @ 2024-06-21 · Rust 包仓库 1816/week @ 2024-06-28 · Rust 包仓库 1946/week @ 2024-07-05 · Rust 包仓库 1641/week @ 2024-07-12 · Rust 包仓库 1661/week @ 2024-07-19 · Rust 包仓库 2363/week @ 2024-07-26 · Rust 包仓库 2384/week @ 2024-08-02 · Rust 包仓库 1983/week @ 2024-08-09 · Rust 包仓库 1946/week @ 2024-08-16 · Rust 包仓库

9,032 每月下载量
用于 2 crate

MIT 许可证

78KB
1.5K SLoC

axum-login

🪪 为Axum提供用户身份验证、认证和授权。

🎨 概览

这个crate为Axum提供用户身份验证、认证和授权作为tower中间件。

它提供以下功能:

  • 用户身份验证、认证和授权:利用AuthSession轻松管理认证和授权。它也是一个提取器,可以直接在您的axum处理程序中使用。
  • 支持任意用户和后端:应用程序实现一些特质,AuthUserAuthnBackend,允许使用任何用户类型和任何用户管理后端。您的数据库?是的。LDAP?当然。认证提供者?当然。
  • 用户和组权限:授权通过AuthzBackend特质实现,允许应用程序定义自定义权限。支持用户和组权限。
  • 方便的路由保护:通过login_requiredpermission_required宏提供保护访问路由的中间件。或者使用AuthSession直接与from_fn一起使用。
  • 可靠的会话管理:使用tower-sessions进行高性能和易用的会话管理。看吧,没有死锁!

📦 安装

要将crate用于您的项目,请在您的Cargo.toml文件中添加以下内容

[dependencies]
axum-login = "0.15.3"

🤸 使用

我们建议您查看我们的sqlite示例

[!NOTE] 请参阅crate文档以获取使用信息。

🦺 安全性

此软件包使用 #![forbid(unsafe_code)] 确保所有内容都是用100%安全的Rust实现。

🛟 获取帮助

我们准备了一些示例,以帮助您开始。您也可以开启讨论并提问。

👯 贡献

我们感激所有形式的贡献,谢谢!

依赖

~7–15MB
~175K SLoC