Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

(PXP-6339): Fetch and cache public keys for JWT validation #52

Merged
merged 6 commits into from
May 26, 2021

Conversation

vpsx
Copy link
Contributor

@vpsx vpsx commented May 19, 2021

Jira Ticket: PXP-6339

New Features

  • Facilitate validation of JWTs from non-Gen3 issuers by adding ability to fetch and cache a JWK set from a non-Gen3 server. Authutils will first look for a jwks_uri at .well-known/openid-configuration and fall back to the legacy Gen3 /jwt/keys endpoint. Keys are serialized to PEM and stored (as before) in flask.current_app.jwt_public_keys.

Breaking Changes

Bug Fixes

Improvements

  • Account for JWTs in which the scope claim is a space-delimited string (use split instead of just putting scope value in list). We expect RAS visas/all GA4GH embedded tokens to have scope claims with this format.

Dependency updates

Deployment changes

@github-actions
Copy link

The style in this PR agrees with black. ✔️

This formatting comment was generated automatically by a script in uc-cdis/wool.

@vpsx vpsx merged commit 7b1d7f5 into master May 26, 2021
@vpsx vpsx deleted the fix/jwks-uri branch June 1, 2021 15:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants