1个不稳定版本
0.0.1 | 2023年2月7日 |
---|
在 #json-web-token 中排名第10
每月下载量 22
被 3 crates 使用
20KB
69 行
CCLM
一个用于访问和操作JSON Web Token (JWT)声明的Rust库
欢迎来到CCLM 👋
概览 📖
《Claims》库包含JSON Web Token (JWT)声明。它为Rust提供了符合RFC7519的JSON Web Tokens (JWT)和JSON Web Signature (JWS)实现。
提供了 Claims
类型来保存JWT的声明。声明存储在 HashMap
中,可以使用 get_claim
、set_claim
、remove_claim
和 has_claim
方法访问。
特性 ✨
下表列出了支持的可选保留声明
声明 | 描述 |
---|---|
aud (受众) |
标识JWT旨在为哪些接收者。 |
custom (自定义) |
自定义声明用于在同意使用它们的各方之间共享信息,既不是注册声明也不是公共声明。 |
did (去中心化标识符) |
一个唯一标识主体的字符串值。 |
exp (过期时间) |
标识JWT不应接受处理的过期时间或之后的时间。 |
iat (发行时间) |
标识JWT的发行时间。 |
iss (发行者) |
标识发行JWT的主要实体。 |
jti (JWT ID) |
为JWT提供唯一标识符。 |
nbf (不可用之前) |
标识JWT必须在此时间之前才可接受处理的时刻。 |
sub (主题) |
标识JWT的主题主体。 |
vc (可验证凭证) |
一种具有防篡改性且作者身份可以通过密码学验证的凭证。 |
vp (可验证展示) |
一种具有防篡改性且作者身份可以通过密码学验证的展示。 |
安装 📦
只需几分钟就可以开始使用 cclm
。
要求
cclm
需要 Rust 1.67.0 或更高版本。
文档
用法 📖
要在项目中使用 cclm
,请将以下内容添加到您的 Cargo.toml
文件中
[dependencies]
cclm = "0.0.1"
请将以下内容添加到您的 main.rs
文件中
extern crate cclm;
use cclm::*;
然后您可以在您的应用程序代码中使用这些函数。
示例
CCLM
附带一系列示例,您可以使用这些示例开始。示例位于项目的 examples
目录中。要运行示例,克隆存储库,并在项目根目录中运行以下命令。
cargo run --example cclm
语义版本策略 🚥
为了透明度以及努力保持向后兼容性,QRC
遵循语义版本。
许可证 📝
该项目受MIT许可证和Apache许可证(版本2.0)条款的约束。
贡献 🤝
除非您明确说明,否则任何您有意提交以包含在作品中的贡献(根据Apache-2.0许可证定义),均应按上述方式双重授权,不附加任何其他条款或条件。
致谢 💙
非常感谢所有优秀的Mini Functions 贡献者,感谢他们的帮助和支持。特别感谢Rust Reddit 社区为我们提供了大量有关如何改进此项目的有用建议。
依赖关系
~0.4–1MB
~22K SLoC