Conversation
This commit refactors the offline JWT validation mechanism by introducing
a builder pattern for `OfflineValidator` and improving the example resource server.
- **feat(token): Introduce `OfflineValidationBuilder` and `OfflineValidator`**
- Provides a flexible builder for configuring `OfflineValidator` instances
with custom JWKS URI, refresh interval, issuer, audience, and algorithms.
- Implements `TokenValidator` for `OfflineValidator`, allowing it to be
used seamlessly with the new authentication strategy system.
- **deps(token): Add `async-trait` dependency**
- Adds `async-trait` to `authkestra-token` to enable async traits for
`TokenValidator` implementation.
- **refactor(examples): Improve `axum_resource_server` example**
- Refactors `axum_resource_server.rs` to use a `Config` struct for better
management of environment variables and application settings.
- Updates the resource server to leverage the new `OfflineValidationBuilder`
for configuring JWT validation.
- Adds a `scope` claim to `MyClaims` and includes it in the protected
resource response for more comprehensive token introspection.
This commit finalizes the changes by updating the root `Cargo.lock` file
to reflect all dependency changes introduced in previous commits.
Additionally, the root `README.md` is updated to highlight the new
"Flexible Chaining" capability provided by the `Authenticator`.
- **chore(deps): Update `Cargo.lock`**
- Synchronizes the `Cargo.lock` file with the latest dependency tree
after the introduction of new features and associated dependencies.
- **docs: Update root `README.md` for flexible chaining**
- Adds a new bullet point to the main `README.md` emphasizing the
`Authenticator`'s ability to chain multiple authentication strategies.
…ategy` This commit refactors the `axum_auth_strategy` example to demonstrate the use of the new `AuthenticationStrategy` trait. Key changes include: - Introduction of `CustomHeaderStrategy` for API key authentication. - Simplification of the `User` identity struct. - Update `MyBasicAuthenticator` to align with the new trait. - Removal of `TokenStrategy` and `AuthPolicy` specific configurations. - Adjustment of tests to reflect the new authentication strategies and expected behavior.
…uards - Moves `AuthGuard` (formerly `Authenticator`) and `AuthPolicy` to the new crate. - Relocates offline JWT validation (JWKS) and `OfflineValidator` to `authkestra-guard`. - Updates root `README.md` and workspace `Cargo.toml` to include the new crate.
…en crates - Removed `Authenticator` and `AuthPolicy` from `authkestra-core`. - Removed `offline_validation.rs` from `authkestra-token`. - Simplified `authkestra-token` to focus on symmetric JWT management. - Updated crate documentation to reflect the new architecture.
- Updated `authkestra-oidc` to use `JwksCache` and validation from `authkestra-guard`. - Refactored `authkestra-axum` and `authkestra-actix` extractors to use `AuthGuard`. - Updated dependencies and documentation for all three crates.
- Updated existing examples to use `AuthGuard` and the new strategy pattern. - Added `axum_combined_flow.rs` to demonstrate chaining multiple strategies. - Updated `Cargo.lock` to reflect all workspace changes.
…Session and AuthToken
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.