Hi Community,
I am planning to build a custom Identity Provider (IdP) in OutSystems ODC using the OpenID Connect (OIDC) protocol for internal applications, similar to Auth0 or Keycloak.
The goal is to provide centralized authentication and authorization for multiple internal applications without relying on third-party or paid enterprise SSO solutions.
I am currently designing the OIDC endpoints such as:
/.well-known/openid-configuration
/authorize
/token
/userinfo
/jwks.json
/logout
I would like to know:
Has anyone implemented a custom OIDC Provider in ODC?
Are there any Forge components, sample applications, or reference architectures available?
Any guidance, examples, documentation, or community experiences would be greatly appreciated.
Thank you.
Hi @Sathish Kumar R ,
Have you checked the documentation provided by OutSystems?
Add an OpenID Connect identity provider - ODC Documentation
Thanks,
Sudip
Yes, I have reviewed the documentation for adding an OpenID Connect Identity Provider in ODC. However, my requirement is slightly different.
Instead of configuring ODC to use an external IdP, I would like to understand whether it is possible to build a custom Identity Provider within OutSystems that acts as an OIDC Provider (similar to Auth0 or Keycloak) and can authenticate users and issue tokens for multiple internal applications.
Just checking if anyone has any insights or experience with implementing a custom OIDC Identity Provider in OutSystems ODC. Any guidance, references, sample implementations, or best practices would be greatly appreciated.
Thank you!
Hello @Sathish Kumar R
ODC has already a built-in IdP that can be used as the IdP to authenticate ODC applications, in the same way you do with an external IdP. So, I would say you can implement your own.
But...
Can't you use this one instead? Do you see any limitation regarding the Built-in IdP that would prevent authenticate external applications?
If so, I know you can use O11 to authenticate ODC users, meaning that it's possible to implement an IdP in O11. I think there is a Forge component for that. Bridge...something.
You could take a look at it.
Cheers!