cloudstack-mirror/plugins
Daman Arora 33c3967b6b
Some checks are pending
CodeQL Analysis / CodeQL (actions) (push) Waiting to run
Docker Image Build / build (push) Waiting to run
Sonar Quality Check (Main) / Sonar JaCoCo Coverage (push) Waiting to run
Add per-domain OAuth (Google, GitHub) provider support (#12702)
* Add domain_id to oauth_provider table and VO

* Add domain-aware methods to OauthProviderDao

* Add domainId parameter to OAuth provider API commands and response

* Add domain support to OAuth2AuthManager

* Add domain-aware OAuth verification

* Add domain support to ListOAuthProvidersCmd and update related tests

* fix domain path issue

* Add domainId support to OAuth provider

* Return domain name and UUID in OAuth provider API responses using ApiDBUtils

* Refactor domain ID resolution in VerifyOAuthCodeAndGetUserCmd to improve code clarity

* Enhance OAuth2 plugin support for domain-level configuration and authentication checks

* Update OAuth2 tests and VerifyOAuthCodeAndGetUserCmdTest

* Add method to find OAuth provider by domain with global fallback

* Update OAuth provider configuration to use 'domain' instead of 'domainid' in columns and details

* Refactor OAuth provider methods to support domain-level queries and enhance user verification

* Add caching for access token retrieval in GithubOAuth2Provider

* Refactor access token checks in GithubOAuth2Provider to use StringUtils for improved readability and consistency

* Refactor null checks to use utility for improved readability and consistency

* Update OAuth2UserAuthenticatorTest to include domainId in user verification method

* Remove unnecessary blank line and unused imports in OAuth provider command classes

* Refactor and cleanup

* Remove unnecessary blank lines

* Enhance RegisterOAuthProviderCmdTest with additional provider mock data

* Remove startup gate from OAuth plugin initialization to support dynamic config toggling

* Add strictScope to ConfigKey to disable global fallback for domain-scoped oauth2.enabled

* Add domain-scoped provider filtering to listOauthProvider and centralize domain resolution in OAuth2AuthManager

* Add External OAuth tab with domain-scoped provider selection to login page

* code cleanup

* test fix

* Handle login page provider visibility

* UI cleanup

* UI Cleanup

* Keep text color consistent

* add unit tests

* Add Multiple-domain OAuth tests

* Refactor as per PR comments

* Use idempotent DDL helpers for oauth_provider schema migration

* Use global config check for global providers and extract oauthEnabled variable

* Make strictScope return null when id is null

* Rename verification methods to use 'verifySecretCodeAndFetchEmail' for consistency

* Refactor domain handling in OAuth2AuthManagerImpl to use DomainService instead of DomainDao

* Enhance domain ID descriptions in OAuth command classes for clarity

* Add domain path handling to OAuth provider commands and improve descriptions

* Update domain path description in VerifyOAuthCodeAndGetUserCmd to clarify behavior with Domain ID

* Replace remove method with expunge in deleteOauthProvider and add corresponding unit test

* Add external login label to Login.vue and update i18n locale handling

* Fix stale value issue in updateConfiguration response handling in ConfigurationValue.vue

* Enhance OAuth login error handling and add unit test for missing parameters

* Add validation to reject enabling OAuth provider when plugin is disabled at domain scope

* Add domain reassignment support to UpdateOAuthProviderCmd and enhance validation in OAuth2AuthManagerImpl

* Add domain ID to OAuth provider arguments in config

* Fix condition for OAuth verification URL handling in router

* Add domain path to OauthProviderResponse and update UI config to display it

* Update config to remove 'secretkey' from columns and details

* Add secretkey to details in config and display in DetailsTab

* Implement normalization of ROOT domain to null for global OAuth provider handling and add corresponding unit tests

* Refactor OAuth plugin domain scope handling to use a centralized method for enabling checks

* Add strict scope handling to ConfigKey and update OAuth2AuthManager usage

* Implement domain removal listener to clean up OAuth providers on domain deletion

* Enhance OAuth tab icons with disabled state styling for better UX

* Add domain-specific provider prompt and update OAuth provider handling

---------

Co-authored-by: Daman Arora <daman.arora@shapeblue.com>
2026-07-09 16:30:31 +05:30
..
acl Updating pom.xml version numbers for release 4.22.2.0-SNAPSHOT 2026-05-18 17:17:25 +05:30
affinity-group-processors Updating pom.xml version numbers for release 4.22.2.0-SNAPSHOT 2026-05-18 17:17:25 +05:30
alert-handlers Updating pom.xml version numbers for release 4.22.2.0-SNAPSHOT 2026-05-18 17:17:25 +05:30
api Updating pom.xml version numbers for release 4.22.2.0-SNAPSHOT 2026-05-18 17:17:25 +05:30
backup feat(backup): incremental NAS backup support for KVM (#13074) 2026-07-08 14:06:41 +02:00
ca/root-ca Add ROOT CAs to the trust store and allow force provisioning of certs hosts & systemVMs via ssh (#12911) 2026-05-21 13:19:13 +05:30
database Guest OS rules (#10098) 2026-06-15 08:25:55 -03:00
dedicated-resources Updating pom.xml version numbers for release 4.22.2.0-SNAPSHOT 2026-05-18 17:17:25 +05:30
deployment-planners Updating pom.xml version numbers for release 4.22.2.0-SNAPSHOT 2026-05-18 17:17:25 +05:30
dns/powerdns CloudStack DNS framework - Integrate PowerDNS as first plugin (#12737) 2026-07-07 09:39:15 +02:00
drs/cluster Updating pom.xml version numbers for release 4.22.2.0-SNAPSHOT 2026-05-18 17:17:25 +05:30
event-bus Add ROOT CAs to the trust store and allow force provisioning of certs hosts & systemVMs via ssh (#12911) 2026-05-21 13:19:13 +05:30
ha-planners/skip-heurestics Updating pom.xml version numbers for release 4.22.2.0-SNAPSHOT 2026-05-18 17:17:25 +05:30
hypervisors Add xenserver.create.full.clone global setting (#13114) 2026-07-08 16:17:34 +02:00
integrations veeam-control-service: fix vm pagination (#13383) 2026-07-07 13:08:58 +02:00
kms Feature: Key Management Service (KMS) (#12711) 2026-06-30 10:10:41 +05:30
maintenance Updating pom.xml version numbers for release 4.22.2.0-SNAPSHOT 2026-05-18 17:17:25 +05:30
metrics Updating pom.xml version numbers for release 4.22.2.0-SNAPSHOT 2026-05-18 17:17:25 +05:30
network-elements Soft delete port forwarding, load balancing and firewall rules (#13015) 2026-06-29 18:21:19 -03:00
outofbandmanagement-drivers Updating pom.xml version numbers for release 4.22.2.0-SNAPSHOT 2026-05-18 17:17:25 +05:30
storage Merge remote-tracking branch 'apache/4.22' 2026-07-07 10:19:50 +02:00
storage-allocators/random Updating pom.xml version numbers for release 4.22.2.0-SNAPSHOT 2026-05-18 17:17:25 +05:30
user-authenticators Add per-domain OAuth (Google, GitHub) provider support (#12702) 2026-07-09 16:30:31 +05:30
user-two-factor-authenticators Updating pom.xml version numbers for release 4.22.2.0-SNAPSHOT 2026-05-18 17:17:25 +05:30
pom.xml CloudStack DNS framework - Integrate PowerDNS as first plugin (#12737) 2026-07-07 09:39:15 +02:00