mirror of
https://github.com/fatedier/frp.git
synced 2026-05-15 08:05:49 -06:00
[PR #5260] auth/oidc: Add support for static JWKS and PEM key verification in OIDC #5210
Labels
No labels
In Progress
WIP
WaitingForInfo
bug
doc
duplicate
easy
enhancement
future
help wanted
invalid
lifecycle/stale
need-issue-template
need-usage-help
no plan
proposal
pull-request
question
todo
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: github-starred/frp#5210
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/fatedier/frp/pull/5260
Author: @johnvox
Created: 3/23/2026
Status: 🔄 Open
Base:
dev← Head:feat/oidc-key-based📝 Commits (7)
313bb11feat: Support for static oidc keys086db93fix: fix decode pub key9199c69feat: refactor and add test255249dfix: address lint issuesf666c99Handle nil JWKS in DecodeJWKS function05c5fa2Merge branch 'dev' into feat/oidc-key-based6a7ed23feat: add test with empty public key📊 Changes
16 files changed (+690 additions, -1 deletions)
View changed files
📝
pkg/auth/oidc.go(+42 -1)📝
pkg/auth/oidc_test.go(+260 -0)➕
pkg/auth/testSample/jwks_multiple.json(+20 -0)➕
pkg/auth/testSample/jwks_single.json(+12 -0)➕
pkg/auth/testSample/pem_multiple.pem(+12 -0)➕
pkg/auth/testSample/pem_single.pem(+6 -0)➕
pkg/auth/testSample/pki.json(+32 -0)➕
pkg/auth/testSample/pki/ca.key(+28 -0)➕
pkg/auth/testSample/pki/ca.pem(+21 -0)➕
pkg/auth/testSample/pki/server.csr(+16 -0)➕
pkg/auth/testSample/pki/server.full.pem(+42 -0)➕
pkg/auth/testSample/pki/server.key(+28 -0)➕
pkg/auth/testSample/pki/server.pem(+21 -0)➕
pkg/auth/utils.go(+62 -0)➕
pkg/auth/utils_test.go(+78 -0)📝
pkg/config/v1/server.go(+10 -0)📄 Description
WHY
This PR introduces support for static key verification in the OIDC authentication flow, allowing the use of JWKS (JSON Web Key Set) and PEM-encoded certificates/public keys as alternatives to dynamic OIDC provider-based verification.
Enables OIDC token verification in offline or restricted environments.
New Configuration:
Here Config Snippet used during dev
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.