-
Notifications
You must be signed in to change notification settings - Fork 2.7k
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
OIDC dev services and ui changes #35324
Conversation
Thanks to @phillip-kruger for his design in the new lightweight dev service. You can see at https://github.com/quarkusio/quarkus/pull/35324/files#diff-348da42b232118c4809edbac7a9ae8228b336bcee5e80cf3c8fe81f36d886a16R1223 what I was trying to do to decorate the output of |
Hi Steph @FroMage, and @phillip-kruger, this is just super great, and it really opens it up for all OIDC users, not only those working with Keycloak. I'm just back from PTO, so I'll be commenting during the next few days.
Let it settle a bit and we can switch, but what I've also been thinking about, since it is a lightweight version, and hence not Keycloak specific, I'm having a doubt that it should be enabled/disabled with |
No, we don't need it, RTs are not supposed to be visible outside of the By the way, JWT is currently decoded with the base64 function, which is wrong, it should be base64url decoded, it nearly always works, but I noticed once, with Auth0 JWT tokens, it was failing to decode the tokens. I recall I could not find the ready function to use bas64url at the time, some custom JavaScript modules were needed, but may be now it is an easy replacement, have a look please, may be @phillip-kruger knows the function name |
CC-ing @stuartwdouglas as well, as Stuart had been reviewing my original PR and we had a few iterations discussing how to package the (KC) devservices |
Or may be we can just have a new property in It is a minor thing, ](https://github.com/quarkusio/quarkus/blob/main/extensions/oidc/deployment/src/main/java/io/quarkus/oidc/deployment/DevUiConfig.java), that would make keep it in the OIDC namespace, say |
I was thinking slightly differently, that since the extension is named |
@FroMage It would be a breaking change for Keycloak users and for them having to include a new dep would be a problem. The current devservice is used a lot by KC users. |
@FroMage By the way, the current OIDC Dev UI can already be used to interact with OIDC providers configured with What happens if the lightweight option is enabled and |
Steph, lets continue the discussion |
I don't have much time ATM, but sure, let's finish this. What question did you have? |
@sberyozkin OK, I rebased it. Shall we resume the discussion and get it merged? Can you remember what you wanted me to change? Thanks. |
This comment has been minimized.
This comment has been minimized.
Ping @sberyozkin |
@sberyozkin any chance we can get this moving? |
...loyment/src/main/java/io/quarkus/oidc/deployment/devservices/keycloak/DevServicesConfig.java
Outdated
Show resolved
Hide resolved
...in/java/io/quarkus/oidc/deployment/devservices/keycloak/LightweightDevServicesProcessor.java
Outdated
Show resolved
Hide resolved
extensions/oidc/deployment/src/main/resources/dev-ui/qwc-oidc-provider.js
Outdated
Show resolved
Hide resolved
I've rebased this. Does this need any tests written? Documentation somewhere? |
@FroMage Sorry for the delay, I miss many GitHub pings, ping me please at Zulip if I don't respond for weeks/months :-). Please address the comment at #35324 (comment). Related to it is the namespace for the lightweight mode, it feels Look forward to us merging this PR soon |
This has been more than a year now and IIUC @FroMage activities around Panache 2, you won't have time this month? I'd like to make sure this gets into 3.18 because it's fantastic feature. How about we divide this PR into smaller pieces? I am mostly interested in this piece:
And I think you need to:
Overall, it should be easy to finish this part as you have done all the work, problem is that I can't help because I can't push into your PR. WDYT is there a chance you will have time for this or you see a chance for me to help? |
I certainly won't :(
That'd be great.
Well, sure, but I won't have time
I have no idea what this even means :(
I don't care about which namespace this uses, the bigger question was whether this should be on by default or not.
I've added you as collaborator. |
Sorry, there is a mechanism we use to determine when Keycloak Dev Service should be started because we need to coordinate when OIDC extension, OIDC Client, OIDC Client Registration, Keycloak Admin client need this dev service and when should we not start it. It's not important to explain here. I'll take care of it.
I am +1 for turning this by default, but I think we will end up doing it later based on Sergey's feedback. I think it would be nice to get a feedback from users that tried it.
Thank you, I'll be working on it during next week. |
33368c5
to
a4cf906
Compare
I just resolved merge conflicts with the current main and pushed to see if I can. Please ignore that push for now, thanks. |
hey @sberyozkin, once again ready for a review :-) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@michalvavrik @FroMage, thank you for this awesome feature
Status for workflow
|
Status for workflow
|
related to #35324 |
hey @maxandersen , a PR is always related to itself. I think that was a typo. I am curious what you meant that was related to this PR. Thanks |
Fixes #31340.
Fixes #34577.
Fixes #35064.
quarkus.keycloak.devservices.roles.john=reader,writer
config (no need for theusers.john
key because no password is requiredweb-app
in OIDC Dev UI, including session cookiesI'll make this a Draft PR because docs are still needed, and also this requires review and aprouval, especially if this replaces the default Keycloak Dev UI.