Crate rauthy_client

source ·
Expand description

Minimal and safe by default client library for the Rauthy project.

You can of course use any generic OIDC client with Rauthy. However, the idea of this crate is to provide the simplest possible production ready setup, with the least amount of overhead and secure default values, if you only use Rauthy anyway.

You can find examples for actix-web, axum or a fully generic framework / application in the Examples directory.

§Features

  • actix-web will enable actix-web specific extractors and handlers
  • axum will enable axum specific extractors and handlers

Modules§

  • Handles the encrypted OIDC state cookie for the login flow
  • The handlers which need to be called from your endpoints
  • The Rauthy OIDC config
  • The authenticated Principal, extracted from valid JWT tokens
  • Rauthy / OIDC provider config and setup
  • Provides everything necessary to extract and validate JWT token claims

Macros§

Structs§

Enums§

Functions§

  • Extracts the claims from a given token into the given struct. CAUTION: Does not validate the token!
  • Generates a secure random pkce s256 challenge and returns (verifier, challenge)
  • The init function must be called exactly once during your app start up before(!) the OidcProvider::setup_*() function. It will initialize variables, clients, cache, and validate the OIDC configuration.
  • This function must be called exactly once during your app start up before(!) the OidcProvider::setup_*() function. It will initialize variables, clients, cache, and validate the OIDC configuration.
  • Generates a secure random alphanumeric value with the given length.