Add keycloak as oauth2 provider
OAuth2 Keycloak Integration for Apache CloudStack
This project provides an integration between Keycloak, an open-source Identity and Access Management solution, and Apache CloudStack, a popular open-source cloud computing software.
Features OAuth2 Authentication: Seamlessly authenticate CloudStack users via Keycloak. Single Sign-On (SSO): Leverage Keycloak's SSO capabilities for a unified login experience across multiple services. User Management: Centralize user management with Keycloak, simplifying administration and enhancing security. Customizable Configuration: Easily configure Keycloak settings within CloudStack to fit your specific environment and needs. Prerequisites
- Apache CloudStack 4.15 or later
- Keycloak 24 or later
- Java 8 or later
Configure Keycloak:
Set up a new client in Keycloak for CloudStack. Configure roles, users, and mappings as required. Configure CloudStack:
Update the CloudStack configuration to use Keycloak for authentication. Restart CloudStack management server if necessary.
Contributing We welcome contributions to enhance this integration. Please fork the repository, create a feature branch, and submit a pull request.
Congratulations on your first Pull Request and welcome to the Apache CloudStack community! If you have any issues or are unsure about any anything please check our Contribution Guide (https://github.com/apache/cloudstack/blob/main/CONTRIBUTING.md) Here are some useful points:
- In case of a new feature add useful documentation (raise doc PR at https://github.com/apache/cloudstack-documentation)
- Be patient and persistent. It might take some time to get a review or get the final approval from the committers.
- Pay attention to the quality of your code, ensure tests are passing and your PR doesn't have conflicts.
- Please follow ASF Code of Conduct for all communication including (but not limited to) comments on Pull Requests, Issues, Mailing list and Slack.
- Be sure to read the CloudStack Coding Conventions. Apache CloudStack is a community-driven project and together we are making it better 🚀. In case of doubts contact the developers at: Mailing List: [email protected] (https://cloudstack.apache.org/mailing-lists.html) Slack: https://apachecloudstack.slack.com/
@harikrishna-patnala I am waiting for your response.
Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:
Project coverage is 4.19%. Comparing base (
a9caee3) to head (9e53596). Report is 28 commits behind head on main.
:exclamation: Current head 9e53596 differs from pull request most recent head 0d3489e
Please upload reports for the commit 0d3489e to get more accurate results.
Additional details and impacted files
@@ Coverage Diff @@
## main #9168 +/- ##
============================================
- Coverage 15.32% 4.19% -11.14%
============================================
Files 5459 369 -5090
Lines 477298 30277 -447021
Branches 60202 5357 -54845
============================================
- Hits 73135 1269 -71866
+ Misses 396084 28864 -367220
+ Partials 8079 144 -7935
| Flag | Coverage Δ | |
|---|---|---|
| uitests | 4.19% <ø> (ø) |
|
| unittests | ? |
Flags with carried forward coverage won't be shown. Click here to find out more.
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
@harikrishna-patnala I am waiting for your response.
Do you have plans to extend this support in UI also ?
of course I will. why don't we add as an option with google and github dropdown list.
@amend07 there are build failures, can you please check and update the PR
of course I will. why don't we add as an option with google and github dropdown list.
yes we can do that
This pull request has merge conflicts. Dear author, please fix the conflicts and sync your branch with the base branch.
@harikrishna-patnala check it out now.
@harikrishna-patnala I'm waiting your response
@amend07 there are merge conflicts in the PR. Can you please resolve them?
@amend07 there are merge conflicts in the PR. Can you please resolve them and also address any outstanding comments?
Hey folks. I am sorry for asking a question in an issue that is already closed but it fall into the same realm of OAuth2 platforms.
Is there any plan to make it, or CloudStack is already compatible with OAuth2 (or OpenID Connect) with other SSO solutions like Authentik or Authelia?
Hey folks. I am sorry for asking a question in an issue that is already closed but it fall into the same realm of OAuth2 platforms.
Is there any plan to make it, or CloudStack is already compatible with OAuth2 (or OpenID Connect) with other SSO solutions like Authentik or Authelia?
@daviftorres , when there are people willing to put in teh effort (or pay someone to do so) any provider can be added. So far the github and google one seem to be sufficient for people.
ping @amend07 can you resolve the conflicts please.
@amend07 possible for you to resolve conflicts? I can also do that if no objections
closing as there is a lot of outdated code here