Hi,
I'm not sure if this is the right place for my
question, but I'm a bit confused. It's about the
new capabilities in Jakarta EE 10 regarding OpenID
Integration (OIDC).
With the
@OpenIdAuthenticationMechanismDefinition
annotation Jakarta EE supports a cool way to
integrate the oidc authentication flow. But this
annotation (supported by all actual platforms) is
only for browser based authentication. I have
always assumed that this mechanism also supports
programmatic logins. But this is obviously not the
case.
This means: If you add the
@OpenIdAuthenticationMechanismDefinition to your
Jakarta EE app you can connect your app easily
with different Identity provider platforms (e.g.
Keycloak) and users can authenticate in a secure
way via Web browsers. But if you need to perform a
programmatic login - for example in a microservice
architecture where an external service need to
access your applications API you are totally lost.
I can't believe that I'm the only one who makes
this requirement?
Wildfly offers its own proprietary solution (I
think based on soteria) that supports exactly this
feature. But this means that the application is no
longer platform-neutral and you are forced to use
the elytron library "wildfly-elytron-http-oidc" to
get out user attributes from the users claim.
I have written a blog about this feature here: https://ralph.blog.imixs.com/2025/03/26/wildfly-29-oidc-bearer-token-authentication/
I guess your answer in this forum will be that
Jakarta EE is just a specification and if I need
such a feature I can implement my own jaspi login
module. But can that really be true? Not every
developer writes his own jaspi Login module. I
myself shy away from it, because I expect that I
will very quickly reach a point where I am no
longer platform independent.
Can anyone help me with this question? Or am I
missing an important concept of Jakarta EE all the
time?
I have already written issues about this at
Wildfly and soteria and on Stackoverflow. But
somehow the community is silent on this topic.
Thanks for your help in advance
===
Ralph
--
Imixs
Software Solutions GmbH
Web: www.imixs.com
Phone: +49 (0)89-452136 16
Timezone: Europe/Berlin - CET/CEST
Office: Frei-Otto-Str. 4, 80797 München
Registergericht: Amtsgericht München, HRB 136045
Geschäftsführer: Gaby Heinle u. Ralph Soika
Imixs is an open source company, read
more: www.imixs.org
_______________________________________________