7 个不稳定版本
0.4.0 | 2023年4月14日 |
---|---|
0.3.0 | 2022年2月7日 |
0.2.0 | 2020年1月28日 |
0.1.3 | 2019年11月13日 |
0.1.1 | 2019年1月9日 |
#951 在 身份验证 中
每月 42 次下载
82KB
904 行
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 License, Version 2.0, (LICENSE-APACHE 或 https://apache.ac.cn/licenses/LICENSE-2.0)
- MIT License (LICENSE-MIT 或 http://opensource.org/licenses/MIT)
贡献者
欢迎提交拉取请求、问题和评论。对于拉取请求
- 为新特性和错误修复添加测试
- 遵循现有样式
- 将不相关的更改分开到多个拉取请求中
- 查看现有问题以了解如何开始贡献。
对于较大的更改,请先创建一个问题并说明预期更改,以确保开始讨论。
Atlassian 要求贡献者签署贡献者许可协议(CLA)。此协议作为记录,表明贡献者有权向项目贡献代码/文档/翻译,并愿意将其用于分发和衍生作品(或愿意转让所有权)。
在接收您的贡献之前,我们要求您按照以下链接中的适当链接进行数字签名以签署 CLA。企业 CLA 适用于作为组织成员贡献的人,而个人 CLA 适用于个人贡献者。
免责声明
这不是官方 Atlassian 产品(实验性或其他),这只是恰好属于 Atlassian 的代码。
依赖关系
~18–33MB
~630K SLoC