Generates JWT token in Snowflake-compatible format, see Using Key Pair Authentication.
Can be used in order to run queries against SQL REST API.
[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)
}