17 个版本

0.8.0 2023年5月3日
0.7.1 2022年8月1日
0.7.0 2021年9月24日
0.6.4 2021年4月13日
0.3.0 2019年3月2日

认证 中排名第 222

Download history 23/week @ 2024-04-28 28/week @ 2024-05-05 59/week @ 2024-05-12 83/week @ 2024-05-19 84/week @ 2024-05-26 11/week @ 2024-06-02 274/week @ 2024-06-09 82/week @ 2024-06-16 32/week @ 2024-06-23 31/week @ 2024-06-30 4/week @ 2024-07-07 76/week @ 2024-07-14 35/week @ 2024-07-21 110/week @ 2024-07-28 48/week @ 2024-08-04 31/week @ 2024-08-11

每月下载量 228
6 crates 中使用(直接使用5个)

MIT 许可证

35KB
829

Authn

Build Status

认证库。

许可证

源代码根据 MIT 许可证 的条款提供。

命令行界面

此工具提供了对JSON Web令牌的三个操作:令牌 生成解码验证

令牌生成

根据提供的参数或通过 配置 生成给定账户的令牌和过期时间戳。

例如,为账户 barbaz.services 生成一个有效的1小时令牌

$ svc-authn-cli sign --account bar.baz.services --expires_in 3600
REJ0eXAiOiJKV...

可用参数

  • --expires-in seconds | --expires-at datetime - 设置令牌加密,为 seconds 将来或 datetime 时刻(可用格式为 "YYYY-MM-DD" 和 "YYYY-MM-DD hh:mm:ss")
  • --cross-audience - 受众范围
  • --account | -a - 需要指定发行令牌的账户

配置

配置文件通过 --config | -c 参数提供,或默认从 ~/.svc/authn-cli.toml 读取。

它为令牌提供默认的 expires_in 值(当没有为 sign 提供任何 --expires-in | --expires-at 参数时)和一组对应发行者、编码算法以及用于签名和验证令牌的密钥。

请查看示例配置

令牌解码

给定一个令牌,我们可以提取其内容

$ svc-authn-cli decode REJ0eXAiOiJKV...
{ "iss" : "baz.services", "aud" : "baz.services", "sub" : "bar", "exp": 1586531265 }

令牌验证

给定一个令牌,我们可以验证其签名

$ svc-authn-cli verify REJ0eXAiOiJKV...
Verification passed, token valid for 3543 seconds

依赖项

~0.4–19MB
~239K SLoC