-
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
Quarkus keycloak authorization usability improvements. #14851
Comments
/cc @geoand |
cc @sberyozkin |
CC @pedroigor |
@pjgg It does make sense to define paths like that. It should be a trivial change. Do you have something implemented already? Otherwise, I'm going to work on it. |
No, just the idea!. So, go for it!!! |
There is a new Non-application endpoint implementation, where all non-application endpoint by default are under
Support paths like:
Could be interesting from a usability point of view, but is not as critical. |
@pjgg Have you found a solution to your problem? |
For the non-application endpoint sounds like the supported solution is this one:
If you want to skip another endpoints (business endpoint), I think that the only approach is to go one by one, or try to group this endpoint under a
@pedroigor WDYT ? |
This works for me too. But the actual behavior is a bit different from what the documentation says. quarkus.keycloak.policy-enforcer.paths."paths".path mentions paths as: Also, I understand from the documentation Using OpenID Connect (OIDC) and Keycloak to Centralize Authorization - Access to Public Resources that it's enough to define a Maybe I made a mistake, but the different behavior of these two concepts in terms of relative versus absolute paths, as well as one versus multiple paths per policy, makes it difficult to get it to work. |
yep, let's fix that
that's not enough information, please open new issue with a reproducer. what you describe is not related to this enhancement proposal. |
Description
I would like to talk about how to
quarkus-keycloak-authorization
extension handler redirections and path exclusions because I think that could be improved from a usability point of view.Scenario
So, let's imagine that we have a Rest application that is going to be deployed on openshift/k8s. Typically these applications use to have at least the following non-application endpoints:
Most of them must be public or at least be accessible by the cluster (readiness/liveness probe), Prometheus... so, it seems reasonable to have the following configuration:
These configurations are not taking into account the application endpoint. This is just for platform endpoints. This config could be slightly improved if I group all redirections (
/q
), into one rule:Note: this approach makes public all
/api/q/*
endpoints, so your business application can't have this path.implementation ideas
As a developer I would like to group paths into one single rules:
Example:
Also, I am not sure if Quarkus as a cloud-native framework that is, should handle by default all non-application redirections(and/or paths) and make them accessible from a Paas, as Openshift/k8s. I am not sure about that...
What do you think?
The text was updated successfully, but these errors were encountered: