18 个版本 (10 个重大更新)
0.11.0 | 2023年4月14日 |
---|---|
0.10.0 | 2022年2月7日 |
0.9.0 | 2020年1月28日 |
0.8.0 | 2019年11月13日 |
0.4.0 | 2018年7月13日 |
#788 in 网页编程
在 asap_cli 中使用
63KB
624 行
ASAP for Rust
文档.
这是一个用于生成和验证 ASAP 令牌的 Rust 库。它提供了符合 ASAP 规范 的选项。
为什么你应该使用这个库?
- 你是否想要每毫秒生成 1 个 ASAP 令牌?
- 你是否想要每毫秒验证 5 个 ASAP 令牌?
- 你是否想要以任何你喜欢的格式提供自己的
Claims
令牌? - 你是否想要/需要使用 ASAP 与有史以来最伟大的语言之一一起使用?
基本上,是的。是的,如果你想要使用 ASAP 并使用 Rust,你应该使用这个库。
此仓库还提供了一个用于在命令行上使用 ASAP 的有用工具。
# Install the binary:
cargo install asap_cli
# Setup your ASAP keys:
asap init
# Make an ASAP authorised request via curl:
asap curl https://my-asap-secured-server/
用法(库)
安装
要安装,请将以下行添加到你的 Cargo.toml
asap = "<latest-version-from-crates.io>"
# These crates are required for defining any extra claims that will be
# serialised into the token (and deserialised out of it).
serde = "1"
serde_json = "1"
文档
并查看 文档和 API,这对于你需要的大部分内容来说应该足够简单。
用法(二进制文件)
通过运行二进制文件本身查看帮助输出
asap help
开发和测试
此项目由 cargo
管理。它还包括一个 justfile
,以简化某些操作。阅读该文件以了解为常见操作运行的命令。例如
# Run all the tests:
just test
# Run the `asap` cli tool:
just run --audience "server" curl "https://my.server.net"
# Publish the updated crates:
just publish
请注意,某些测试需要一个密钥服务器才能运行。它们在测试开始时在一个随机端口上启动工作区中的 小型密钥服务器。由于每个测试都有自己的密钥服务器,它们可以并行运行。
参考文献
- ASAP 规范:https://s2sauth.bitbucket.io/spec/
- JWT 规范:https://tools.ietf.org/html/rfc7519
- JWS 规范:https://tools.ietf.org/html/rfc7515
许可证
此库根据以下任一许可证进行双重许可,由你选择
- Apache许可证,版本2.0,(LICENSE-APACHE或https://apache.ac.cn/licenses/LICENSE-2.0)
- MIT许可证(LICENSE-MIT或http://opensource.org/licenses/MIT)
贡献者
欢迎提交拉取请求、问题和评论。对于拉取请求
- 为新增功能和错误修复添加测试
- 遵循现有样式
- 将无关更改分开为多个拉取请求
- 查看现有问题,了解开始贡献的事项。
对于更大的更改,请首先通过创建问题并说明预期更改来发起讨论。
Atlassian要求贡献者签署贡献者许可协议(CLA)。这作为记录表明,贡献者有权向项目贡献代码/文档/翻译,并愿意将其用于分发和衍生作品中(或愿意转让所有权)。
在接受您的贡献之前,我们要求您请按照以下链接进行数字签名以签署CLA。企业CLA是为那些以组织成员身份做出贡献的人准备的,个人CLA是为那些以个人身份做出贡献的人准备的。
免责声明
这不是一个官方的Atlassian产品(实验性的或其他),这只是恰好归Atlassian所有的一段代码。
依赖项
~14–31MB
~544K SLoC