#cloud-front #aws #signed-url #signed-cookie

cloudfront_sign

AWS CloudFront生成签名URL和cookie的实用模块

5个不稳定版本

0.3.0 2024年2月25日
0.2.1 2022年11月13日
0.2.0 2022年11月13日
0.1.2 2021年3月27日
0.1.1 2021年3月17日

#538 in 加密学

Download history 444/week @ 2024-03-31 353/week @ 2024-04-07 351/week @ 2024-04-14 328/week @ 2024-04-21 275/week @ 2024-04-28 379/week @ 2024-05-05 346/week @ 2024-05-12 457/week @ 2024-05-19 303/week @ 2024-05-26 304/week @ 2024-06-02 293/week @ 2024-06-09 671/week @ 2024-06-16 439/week @ 2024-06-23 341/week @ 2024-06-30 395/week @ 2024-07-07 291/week @ 2024-07-14

1,496 个月下载量

MIT 许可证

15KB
204

AWS CloudFront签名工具

生成CloudFront链接的签名比S3要复杂一些。这是因为S3 URL的签名生成与CloudFront URL略有不同。Rusoto库处于维护模式,不接受更多功能。因此,我们创建了这个简单的实用库,用于在Rust中签名CloudFront URL。

示例

获取签名cookie。

use std::fs;
use cloudfront_sign::*;
let private_key = fs::read_to_string("tests/data/private_key.pem").unwrap();
let options = SignedOptions {
    key_pair_id: String::from("SOMEKEYPAIRID"),
    private_key: private_key,
    ..Default::default()
};
let cookies = get_signed_cookie("https://example.com", &options).unwrap();

获取签名URL。

use std::fs;
use cloudfront_sign::*;
let private_key = fs::read_to_string("tests/data/private_key.pem").unwrap();
let options = SignedOptions {
    key_pair_id: String::from("SOMEKEYPAIRID"),
    private_key: private_key,
    ..Default::default()
};
let signed_url = get_signed_url("https://example.com", &options).unwrap();

依赖关系

~4.5MB
~90K SLoC