1 个不稳定版本
0.1.0 | 2022 年 5 月 6 日 |
---|
#101 in #tower
14KB
153 代码行
tower-biscuit-auth
Tower 是一个 Rust 库生态系统,旨在提供和启用基于请求/响应服务的可重用抽象。从他们的 GitHub
Tower 旨在使构建健壮的网络客户端和服务器尽可能容易。它是协议无关的,但设计围绕请求/响应模式。如果你的协议完全是基于流的,那么 Tower 可能不太适合。
Biscuit 是一套以授权为中心的新标准。更具体地说,Biscuit 是
- 描述授权模式的语言(基于 Datalog)。
- 用于不对称签名携带令牌的二进制格式(也允许衰减)。
- 这些标准的具体实现。
因此,Tower 主要是提供对服务架构的抽象,而 Biscuits 是一种为服务提供可扩展、灵活授权的新模式。
这个库旨在探索将 Biscuit 授权作为可重用 Tower 抽象的方式。我们目前有一个非常粗略的授权层初稿,其中下游用户提供从请求类型中提取事实的方式,并通过作为一个 tower::filter::Filter
来阻止不良请求。
欢迎贡献,包括对全面重设计的建议。
依赖项
~13MB
~242K SLoC