Improve OIDC support/compatibility
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 431
- Forks
- 179
- Avg merge
- 2d 9h
- Merged PRs (30d)
- 71
Description
Is your feature request related to a problem? Please describe.
Currently the ui server is to limited in the OIDC support it offers, preventing it to be used with some OIDC providers.
The code has hardcoded defaults that breaks support with some providers.
Describe the solution you'd like
I would like new configuration values to support setting these values in the auth/oidc.go source file at line 80:
oidcConfig := &oidc.Config{
ClientID: config.ClientID,
SkipIssuerCheck: true,
SkipClientIDCheck: true,
SupportedSigningAlgs: []string{"ES256", "RS256"},
}
This example uses hardcoded values too, and the solution should off cause add config and ENV values for setting the value of:
- SkipIssuerCheck (default false)
- SkipClientIDCheck (default false)
- SupportedSigningAlgs (current default is ES256, I believe)
- skip nonce verification (default false)
the nonce value was introduced in specs for OIDC v 2.0, and older OIDC providers may not support nonce, hence the enforcement of the nonce values should be configurable.
Describe alternatives you've considered
We have made our own build of the temporal-ui server to overcome these limitations, but would like to use the stock docker image
Additional context
.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with auth/oidc.go around the oidc.Config construction at line 80, then trace how existing configuration and environment values reach it. Done means SkipIssuerCheck, SkipClientIDCheck, SupportedSigningAlgs, and nonce verification can be configured with the requested false defaults and current signing-algorithm behavior preserved.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- authentication
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100