3个版本

0.1.8 2022年10月31日
0.1.7 2022年8月12日
0.1.6 2022年7月6日
0.1.2 2022年6月26日

#23 in #auth-token

MIT 许可证

24KB
352

vigor_agent

Rust客户端库,用于基于JWT的无状态HTTP身份验证服务器Vigor。实现账户管理和令牌检索的方法。

安装

在你的 Cargo.toml 文件中,将以下行插入到 依赖 部分。

[dependencies]
vigor_agent = "0.1.2"

运行 cargo build 后,将自动下载和安装此库及其依赖项的Cargo包。


lib.rs:

Vigor

该库包含一个用于管理凭据和执行HTTP/HTTPS请求的Vigor身份验证代理。

关于Ed25519的注意事项:此客户端库支持Ed25519身份验证,但只接受PEM编码的密钥。OpenSSH等格式可能无法保证工作。私钥应遵循RFC 7468、PKCS8且未加密。

对私钥材料仅进行最小格式验证。对于所有预期用途,假设库会愚蠢地接受随机噪声作为私钥。您负责实施对不合适的私钥的安全性检查。

此外,请注意,此库完全是同步的,出于简单性和更精简的依赖项树的目的。对于不适合阻塞执行或不适用的用例,应注意的是,可以异步执行同步代码,但不能反之。如果所有其他方法都失败了,那么修辞问题“你试过线程了吗”应该浮现在脑海中。

用法

使用 Vigor::new() 开始代理实例,导入后请参阅文档以获取可用方法的完整列表。

use vigor_agent;

fn main() {
    // you're advised to apply error handling here, instead of just recklessly using .unwrap()
    let mut agent = vigor_agent::Vigor::new().unwrap();
    agent.init().unwrap();
    println!(agent.get("http://example.com/claims/", vigor_agent::AuthMode::Auto).unwrap());
}

依赖项

~11MB
~279K SLoC