Google Sign-In for Rust
Rust API bindings for Google Sign-in.
See authenticating with a backend server.
Usage
Put this in your Cargo.toml
:
[]
= "0.3.0"
And this in your crate root:
extern crate google_signin;
And then you can verify a google JSON web token
use google_signin;
let mut client = new;
client.audiences.push; // required
client.hosted_domains.push; // optional
// Let the crate handle everything for you
let id_info = client.verify.expect;
println!;
// Inspect the ID before verifying it
let id_info = client.get_slow_unverified.expect;
let ok = id_info.verify.is_ok;
println!;
Other Notes
The verify
function currently uses the
tokeninfo endpoint
which handles most of the validation logic, but introduces some latency.
If you are expecting high volumes of sign-ins:
- Add a reaction to the Handle Certificate and Cache-Control auth flow issue so we know how many people need it.
- OR, Submit a Pull Request for the issue to help out.