🔐 tame-oauth
tame-oauth
is a small oauth crate that follows the sans-io approach.
Why?
- You want to control how you actually make oauth HTTP requests
Why not?
- The only auth flow that is currently implemented is the service account flow for GCP. Other flows can be added, but right now that is the only one we need.
- There are several other oauth crates available that have many more features and are easier to work with, if you don't care about what HTTP clients they use.
- This crate requires more boilerplate to use.
Examples
svc_account
Usage: cargo run --example svc_account -- <key_path> <scope..>
A small example of using tame-oauth
together with reqwest. Given a key file and 1 or more scopes, it will attempt to get a token that could be used to access resources in those scopes.
cargo run --example svc_account -- ~/.secrets/super-sekret.json https://www.googleapis.com/auth/pubsub https://www.googleapis.com/auth/devstorage.read_only
Contributing
We welcome community contributions to this project.
Please read our Contributor Guide for more information on how to get started.
License
Licensed under either of
- Apache License, Version 2.0, (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.