Thanks to visit codestin.com
Credit goes to lib.rs

25 releases

Uses new Rust 2024

0.6.2 Sep 22, 2025
0.6.0 Jul 22, 2025
0.5.0 Mar 13, 2025
0.4.0 Dec 5, 2024
0.1.3 Mar 15, 2024

#71 in Authentication

Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App Codestin Search App

276 downloads per month

Apache-2.0

49KB
1K SLoC

OIDC CLI

crates.io GitHub release (latest SemVer) CI

A command line tool for working with OIDC

Installation

From source with cargo:

cargo install oidc-cli

A binary with cargo-binstall:

cargo binstall oidc-cli

Download a released binary: https://github.com/ctron/oidc-cli/releases

On Windows, you can use winget:

winget install ctron.oidc

With brew to you can:

brew tap ctron/tap
brew install ctron/tap/oidc

Example

Creating a new (confidential) client:

oidc create confidential my-client --issuer https://example.com/realm --client-id foo --client-secret bar

Creating a new (public) client:

oidc create public my-client --issuer https://example.com/realm --client-id foo

Then, get an access token:

oidc token my-client

Or combine it with e.g., HTTPie:

http example.com/api "Authorization:$(oidc token my-client --bearer)"

Or even shorter:

http example.com/api $(oidc token -H my-client)

More examples

Create a public client from an initial refresh token. This can be useful if you have a frontend application, but no means of performing the authorization code flow with a local server. In case you have access to the refresh token, e.g via the browsers developer console, you can initialize the public client with that:

oidc create public my-client --issuer https://example.com/realm --client-id foo --refresh-token <refresh-token>

Dependencies

~38–55MB
~1M SLoC