#google-api #google #gcp #google-service #authentication #env-var

gauthenticator

Simple API for authenticating with google services Project homepage: https://github.com/isaacadams/bq-rs

3 releases

0.2.3 Dec 6, 2024
0.2.2 May 27, 2024
0.1.6 May 25, 2024
0.1.5 Apr 23, 2024
0.1.2 Nov 25, 2023

#1758 in Web programming

Download history 2/week @ 2024-08-26 12/week @ 2024-09-23 147/week @ 2024-12-02 42/week @ 2024-12-09

189 downloads per month
Used in bq-rs

MIT/Apache

30KB
569 lines

Usage

There are three ways to load authentication credentials for google services.

// 1. load credentials from an environment variable
let authentication = gauthenticator::from_environment_variable("SOME_ENV_VAR");
// 2. load credentials from a file path
let authentication = gauthenticator::from_file("/path/to/credentials.json");
// 3. load credentials from your machine's environment using well known locations
let authentication = gauthenticator::from_env().authentication();

let Some(authentication) = authentication else {
    panic!("failed to find credentials");
};

// log out the authentication details
log::debug!("{}", authentication.message());

// load project id from user input or from the service account file
let project_id = authentication.project_id().expect("project id is required");

// create the bearer token
let token = authentication.token(None)?;

Dependencies

~11–20MB
~378K SLoC