4 releases
0.3.1 | May 2, 2024 |
---|---|
0.3.0 | Sep 8, 2023 |
0.1.1 | Aug 16, 2023 |
0.1.0 | Aug 16, 2023 |
#508 in Cryptography
39,781 downloads per month
Used in snowflake-api
15KB
95 lines
snowflake-jwt
Generates JWT token in Snowflake-compatible format, see Using Key Pair Authentication.
Can be used in order to run queries against SQL REST API.
Usage
[dependencies]
snowflake-jwt = "0.1.0"
Check examples for working programs using the library.
use anyhow::Result;
use std::fs;
use snowflake_jwt;
fn get_token(private_key_path: &str, account_identifier: &str, username: &str) -> Result<String> {
let pem = fs::read_to_string(private_key_path)?;
let full_identifier = format!("{}.{}", account_identifier, username);
let jwt = snowflake_jwt::generate_jwt_token(&pem, &full_identifier)?;
Ok(jwt)
}
lib.rs
:
Custom serialization of OffsetDateTime to conform with the JWT spec (RFC 7519 section 2, "Numeric Date")
Dependencies
~5–14MB
~197K SLoC