Skip to content
This repository has been archived by the owner on Mar 3, 2022. It is now read-only.

Support for multiple issuers #1125

Closed
mihalios opened this issue Jun 9, 2020 · 3 comments
Closed

Support for multiple issuers #1125

mihalios opened this issue Jun 9, 2020 · 3 comments
Labels

Comments

@mihalios
Copy link

mihalios commented Jun 9, 2020

I had a look in the backlog of issues/questions and I can see there was some discussion about disabling the issuer check (and as a result going against OIDC guidelines) #839

Is there any way to support receiving tokens from multiple issuers and keep validating the issuer?

@brockallen
Copy link
Member

Is there any way to support receiving tokens from multiple issuers and keep validating the issuer?

Use multiple instances of the UserManager (one per issuer).

@mihalios
Copy link
Author

mihalios commented Jun 10, 2020

Thanks @brockallen. There's another complication I didn't mention originally. The IDP I use to authenticate is effectively a wrapper of two different IDPs that supply the tokens. In other words, there's a single authorization endpoint (the login form gives you options to login to different providers) and distinct issuers. At the time of login, I cannot say which issuer will be used (i.e. when calling signInRedirect() I can't 'pick the right' userManager). I realise now I have the same problem as the OP of #839.

One option is to keep using the library for the SignIn but handle the code exchange manually. Does this sound practical? My concern is that I would need to access the corresponding code verifier to attach to my HTTP POST to the token_endpoint. Is the code_verifier exposed somehow?

@brockallen
Copy link
Member

The IDP I use to authenticate is effectively a wrapper of two different IDPs that supply the tokens.

Then that's one issuer. The architecture sounds wrong to me, sorry.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Development

No branches or pull requests

2 participants