#tower #authorization #request-response #token #biscuits

tower-biscuit-auth

将 Biscuit 认证集成到 Tower 生态系统

1 个不稳定版本

0.1.0 2022 年 5 月 6 日

#101 in #tower

MIT 许可证

14KB
153 代码行

tower-biscuit-auth

Tower 是一个 Rust 库生态系统,旨在提供和启用基于请求/响应服务的可重用抽象。从他们的 GitHub

Tower 旨在使构建健壮的网络客户端和服务器尽可能容易。它是协议无关的,但设计围绕请求/响应模式。如果你的协议完全是基于流的,那么 Tower 可能不太适合。

Biscuit 是一套以授权为中心的新标准。更具体地说,Biscuit 是

  • 描述授权模式的语言(基于 Datalog)。
  • 用于不对称签名携带令牌的二进制格式(也允许衰减)。
  • 这些标准的具体实现。

因此,Tower 主要是提供对服务架构的抽象,而 Biscuits 是一种为服务提供可扩展、灵活授权的新模式。

这个库旨在探索将 Biscuit 授权作为可重用 Tower 抽象的方式。我们目前有一个非常粗略的授权层初稿,其中下游用户提供从请求类型中提取事实的方式,并通过作为一个 tower::filter::Filter 来阻止不良请求。

欢迎贡献,包括对全面重设计的建议。

依赖项

~13MB
~242K SLoC