-
Notifications
You must be signed in to change notification settings - Fork 2.8k
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
Use Keycloak devservice for OIDC MTLS authentication #43565
Use Keycloak devservice for OIDC MTLS authentication #43565
Conversation
da6ed3b
to
f1565b5
Compare
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.
LGTM
...mework/keycloak-server/src/main/java/io/quarkus/test/keycloak/client/KeycloakTestClient.java
Outdated
Show resolved
Hide resolved
Forgot to mention I also updated |
This comment has been minimized.
This comment has been minimized.
f1565b5
to
110e606
Compare
...mework/keycloak-server/src/main/java/io/quarkus/test/keycloak/client/KeycloakTestClient.java
Outdated
Show resolved
Hide resolved
Looks good, feel free to merge when CI is done |
Thanks @gastaldi, applied the suggestion, one last run |
08b2f9c
to
b28fbb7
Compare
Status for workflow
|
Currently,
integration-tests/oidc
uses a custom test factory which launches Keycloak, with the main reason being that Keycloak dev service can not support Keycloak MTLS authentication.But in fact very little has to be changed in the Keycloak dev service code to get started with MTLS, it already supports arbitrary resource mappings and also custom start commands. The only initial thing I had to do was to get the mapped HTTPS port, when HTTPS is required. Right now I did not even introduce another property like
httpsRequired
, if the start command has anything related to--https
, HTTPS must be supported. A bit more work will be needed to make it work for shared containers later.I also had to add
Tls
helper toKeycloakTestClient
for tests which require (m)TLS be able to pass keystore resource names to it. I used arecord
first, but it makes it difficult just to donew Tls()
and gets its properties defaulted to some values.Also converted test keystore resource to
.p12
, was not really necessary, but it is worth moving top12
even in tests, as Clement would agree.I decided to go with this PR to simplify testing OIDC MTLS binding PR which is also in progress