#基本认证 #http基本 #基本认证 #base64 #http头部 #凭证

http-auth-basic

适用于Rust应用程序的HTTP基本认证方案(符合RFC 7617和RFC 2617,使用Base64编码的凭证)

13个版本

0.3.5 2024年7月28日
0.3.4 2024年7月28日
0.3.3 2022年3月30日
0.3.1 2021年8月15日
0.1.0 2020年8月30日

#55 in 认证

Download history 3107/week @ 2024-04-23 2841/week @ 2024-04-30 3185/week @ 2024-05-07 3099/week @ 2024-05-14 3594/week @ 2024-05-21 3301/week @ 2024-05-28 2935/week @ 2024-06-04 3419/week @ 2024-06-11 3408/week @ 2024-06-18 3483/week @ 2024-06-25 3677/week @ 2024-07-02 4134/week @ 2024-07-09 3766/week @ 2024-07-16 4534/week @ 2024-07-23 4377/week @ 2024-07-30 3579/week @ 2024-08-06

每月16,884次下载
用于 5 crates

MIT/Apache

28KB
189

http-auth-basic

适用于Rust应用程序的HTTP基本认证方案(符合RFC 7617和RFC 2617,使用Base64编码的凭证)

Crates.io Documentation Build Clippy Fmt Release Tests

描述

“基本”超文本传输协议(HTTP)认证方案,将凭据以用户ID/密码对的形式发送,使用Base64进行编码。

服务器将从Base64编码的头部值中收集凭据,并验证它们以认证相关用户。

此crate涵盖了凭据的编码和解码。`Credentials`结构提供了两个字段`user_id`和`password`,这些字段填充了原始值。

用法

解码基本授权值并从中创建一个`Credentials`结构。

use http_auth_basic::Credentials;

let auth_header_value = String::from("Basic dXNlcm5hbWU6cGFzc3dvcmQ=");
let credentials = Credentials::from_header(auth_header_value).unwrap();

assert_eq!(credentials.user_id, String::from("username"));
assert_eq!(credentials.password, String::from("password"));

将`Credentials`编码为基本授权头部值。

use http_auth_basic::Credentials;

let credentials = Credentials::new("username", "password");
let credentials = credentials.as_http_header();

assert_eq!(String::from("Basic dXNlcm5hbWU6cGFzc3dvcmQ="), credentials);

发布

git tag -a v0.1.0 -m "Release Message"
git push origin main --follow-tags

贡献

欢迎对这个项目的任何贡献!请随意打开一个pull请求或问题。

参考文献

许可证

根据MIT许可证和Apache许可证(版本2.0)的条款分发

依赖

~240KB