This repository includes an express example app that displays the numerous Authorization Flows in OpenID Connect. This is a Node.js Express app that uses Keycloak to protect the /authorizedRoute route, Login and user setup are controlled by keycloak. The default route / is unprotected. The /logout route clears the keycloak session
- Clone/Download the Repository.
- Extract the zip or navigate to the home directory.
- You can customize the details relevant to the OIDC in the
./keycloak.json
file - Make sure that you replace the keycloak-tenant-id with your TenantID and keycloak-client-id with your ClientID.
- Modify {hostname} to align your keycloak domain.
- Replace
client-secret-for-confidential-client
with client secret (Applicable only if the client is Confidential). - RUN
npm install
- After installation of NPM packages, RUN
npm run start
- By default this node app will run in port
3000
- Finally, go to the browser and start
http://localhost:3000
- Click on "Login" button
- You will be redirected to the user authentication screen of "Keycloak".
- Complete all the authentication steps
- Depending on the response type you configured, you will receive a token.
OpenID Connect is a perfect way to incorporate user authentication to your application, where you are relying on another party to handle user identity.
In this situation, Keycloak handles the identity of the users, allowing it faster to get up and running.
By integrating OpenID Connect via Keycloak, you are building a session that can be used to single sign-on from your custom app to other applications that your users can access via the Keycloak portal.
If you have any queries/you find any problems, please don't hesitate to raise an issue.