From 3effa996dd11006c3d8cad41dfbb685fc51cd43e Mon Sep 17 00:00:00 2001 From: Avgustin Marinov Date: Fri, 8 Nov 2024 16:12:18 +0200 Subject: [PATCH] Refactor tenancy classes (#1972) Signed-off-by: Avgustin Marinov --- ...MemoryUserManagementAutoConfiguration.java | 2 +- .../security/SecurityAutoConfiguration.java | 4 +- hawkbit-core/pom.xml | 5 ++ .../TenantAwareAuthenticationDetails.java | 2 +- .../hawkbit/tenancy}/TenantAwareUser.java | 2 +- .../tenancy}/TenantAwareUserProperties.java | 3 +- ...nvalidTenantConfigurationKeyException.java | 59 ------------------- .../amqp/AmqpMessageHandlerService.java | 2 +- ...enantAwareAuthenticationDetailsSource.java | 2 +- .../TenantConfigurationManagement.java | 2 +- ...nvalidTenantConfigurationKeyException.java | 38 ++---------- ...TenantConfigurationValidatorException.java | 35 ++--------- .../TenantConfigurationProperties.java | 2 +- ...ConfigurationPollingDurationValidator.java | 1 + .../TenantConfigurationValidator.java | 2 + ...TenantConfigurationValidatorException.java | 59 ------------------- .../JpaTenantConfigurationManagement.java | 2 +- .../jpa/model/AbstractJpaBaseEntity.java | 2 +- .../TenantConfigurationManagementTest.java | 2 +- .../test/util/SecurityContextSwitch.java | 4 +- .../MgmtTenantManagementResource.java | 2 +- hawkbit-security-core/pom.xml | 4 -- .../StaticAuthenticationProvider.java | 3 + .../eclipse/hawkbit/security/MdcHandler.java | 2 +- .../security/SecurityContextTenantAware.java | 4 +- .../security/SystemSecurityContext.java | 2 +- .../TenantAwareWebAuthenticationDetails.java | 2 +- 27 files changed, 43 insertions(+), 206 deletions(-) rename {hawkbit-security-core/src/main/java/org/eclipse/hawkbit/im/authentication => hawkbit-core/src/main/java/org/eclipse/hawkbit/tenancy}/TenantAwareAuthenticationDetails.java (96%) rename {hawkbit-security-core/src/main/java/org/eclipse/hawkbit/im/authentication => hawkbit-core/src/main/java/org/eclipse/hawkbit/tenancy}/TenantAwareUser.java (97%) rename {hawkbit-security-core/src/main/java/org/eclipse/hawkbit/im/authentication => hawkbit-core/src/main/java/org/eclipse/hawkbit/tenancy}/TenantAwareUserProperties.java (91%) delete mode 100644 hawkbit-core/src/main/java/org/eclipse/hawkbit/tenancy/configuration/InvalidTenantConfigurationKeyException.java rename {hawkbit-core/src/main/java/org/eclipse/hawkbit/tenancy/configuration/validator => hawkbit-repository/hawkbit-repository-api/src/main/java/org/eclipse/hawkbit/repository/exception}/TenantConfigurationValidatorException.java (59%) delete mode 100644 hawkbit-repository/hawkbit-repository-api/src/main/java/org/eclipse/hawkbit/tenancy/configuration/validator/TenantConfigurationValidatorException.java diff --git a/hawkbit-autoconfigure/src/main/java/org/eclipse/hawkbit/autoconfigure/security/InMemoryUserManagementAutoConfiguration.java b/hawkbit-autoconfigure/src/main/java/org/eclipse/hawkbit/autoconfigure/security/InMemoryUserManagementAutoConfiguration.java index 65119507a..c6269418f 100644 --- a/hawkbit-autoconfigure/src/main/java/org/eclipse/hawkbit/autoconfigure/security/InMemoryUserManagementAutoConfiguration.java +++ b/hawkbit-autoconfigure/src/main/java/org/eclipse/hawkbit/autoconfigure/security/InMemoryUserManagementAutoConfiguration.java @@ -10,7 +10,7 @@ package org.eclipse.hawkbit.autoconfigure.security; import org.eclipse.hawkbit.im.authentication.StaticAuthenticationProvider; -import org.eclipse.hawkbit.im.authentication.TenantAwareUserProperties; +import org.eclipse.hawkbit.tenancy.TenantAwareUserProperties; import org.springframework.boot.autoconfigure.security.SecurityProperties; import org.springframework.boot.context.properties.EnableConfigurationProperties; import org.springframework.context.annotation.Configuration; diff --git a/hawkbit-autoconfigure/src/main/java/org/eclipse/hawkbit/autoconfigure/security/SecurityAutoConfiguration.java b/hawkbit-autoconfigure/src/main/java/org/eclipse/hawkbit/autoconfigure/security/SecurityAutoConfiguration.java index 53ca6531d..ee805a607 100644 --- a/hawkbit-autoconfigure/src/main/java/org/eclipse/hawkbit/autoconfigure/security/SecurityAutoConfiguration.java +++ b/hawkbit-autoconfigure/src/main/java/org/eclipse/hawkbit/autoconfigure/security/SecurityAutoConfiguration.java @@ -16,8 +16,8 @@ import java.util.stream.Collectors; import org.eclipse.hawkbit.ContextAware; import org.eclipse.hawkbit.im.authentication.SpRole; -import org.eclipse.hawkbit.im.authentication.TenantAwareUserProperties; -import org.eclipse.hawkbit.im.authentication.TenantAwareUserProperties.User; +import org.eclipse.hawkbit.tenancy.TenantAwareUserProperties; +import org.eclipse.hawkbit.tenancy.TenantAwareUserProperties.User; import org.eclipse.hawkbit.security.DdiSecurityProperties; import org.eclipse.hawkbit.security.HawkbitSecurityProperties; import org.eclipse.hawkbit.security.InMemoryUserAuthoritiesResolver; diff --git a/hawkbit-core/pom.xml b/hawkbit-core/pom.xml index 23f16bbfc..4ebbdee73 100644 --- a/hawkbit-core/pom.xml +++ b/hawkbit-core/pom.xml @@ -25,6 +25,11 @@ org.springframework.boot spring-boot + + org.springframework.security + spring-security-config + + org.slf4j slf4j-api diff --git a/hawkbit-security-core/src/main/java/org/eclipse/hawkbit/im/authentication/TenantAwareAuthenticationDetails.java b/hawkbit-core/src/main/java/org/eclipse/hawkbit/tenancy/TenantAwareAuthenticationDetails.java similarity index 96% rename from hawkbit-security-core/src/main/java/org/eclipse/hawkbit/im/authentication/TenantAwareAuthenticationDetails.java rename to hawkbit-core/src/main/java/org/eclipse/hawkbit/tenancy/TenantAwareAuthenticationDetails.java index 6c505b5d4..d69663a1e 100644 --- a/hawkbit-security-core/src/main/java/org/eclipse/hawkbit/im/authentication/TenantAwareAuthenticationDetails.java +++ b/hawkbit-core/src/main/java/org/eclipse/hawkbit/tenancy/TenantAwareAuthenticationDetails.java @@ -7,7 +7,7 @@ * * SPDX-License-Identifier: EPL-2.0 */ -package org.eclipse.hawkbit.im.authentication; +package org.eclipse.hawkbit.tenancy; import java.io.Serial; import java.io.Serializable; diff --git a/hawkbit-security-core/src/main/java/org/eclipse/hawkbit/im/authentication/TenantAwareUser.java b/hawkbit-core/src/main/java/org/eclipse/hawkbit/tenancy/TenantAwareUser.java similarity index 97% rename from hawkbit-security-core/src/main/java/org/eclipse/hawkbit/im/authentication/TenantAwareUser.java rename to hawkbit-core/src/main/java/org/eclipse/hawkbit/tenancy/TenantAwareUser.java index 64f5c5bd9..5b097261d 100644 --- a/hawkbit-security-core/src/main/java/org/eclipse/hawkbit/im/authentication/TenantAwareUser.java +++ b/hawkbit-core/src/main/java/org/eclipse/hawkbit/tenancy/TenantAwareUser.java @@ -7,7 +7,7 @@ * * SPDX-License-Identifier: EPL-2.0 */ -package org.eclipse.hawkbit.im.authentication; +package org.eclipse.hawkbit.tenancy; import java.io.Serial; import java.util.Collection; diff --git a/hawkbit-security-core/src/main/java/org/eclipse/hawkbit/im/authentication/TenantAwareUserProperties.java b/hawkbit-core/src/main/java/org/eclipse/hawkbit/tenancy/TenantAwareUserProperties.java similarity index 91% rename from hawkbit-security-core/src/main/java/org/eclipse/hawkbit/im/authentication/TenantAwareUserProperties.java rename to hawkbit-core/src/main/java/org/eclipse/hawkbit/tenancy/TenantAwareUserProperties.java index 30a47d0f7..96e041103 100644 --- a/hawkbit-security-core/src/main/java/org/eclipse/hawkbit/im/authentication/TenantAwareUserProperties.java +++ b/hawkbit-core/src/main/java/org/eclipse/hawkbit/tenancy/TenantAwareUserProperties.java @@ -7,7 +7,7 @@ * * SPDX-License-Identifier: EPL-2.0 */ -package org.eclipse.hawkbit.im.authentication; +package org.eclipse.hawkbit.tenancy; import java.util.ArrayList; import java.util.HashMap; @@ -17,7 +17,6 @@ import java.util.Map; import lombok.Data; import lombok.ToString; import org.springframework.boot.context.properties.ConfigurationProperties; -import org.springframework.lang.NonNull; /** * Configuration for hawkBit static users. diff --git a/hawkbit-core/src/main/java/org/eclipse/hawkbit/tenancy/configuration/InvalidTenantConfigurationKeyException.java b/hawkbit-core/src/main/java/org/eclipse/hawkbit/tenancy/configuration/InvalidTenantConfigurationKeyException.java deleted file mode 100644 index 735f46150..000000000 --- a/hawkbit-core/src/main/java/org/eclipse/hawkbit/tenancy/configuration/InvalidTenantConfigurationKeyException.java +++ /dev/null @@ -1,59 +0,0 @@ -/** - * Copyright (c) 2015 Bosch Software Innovations GmbH and others - * - * This program and the accompanying materials are made - * available under the terms of the Eclipse Public License 2.0 - * which is available at https://www.eclipse.org/legal/epl-2.0/ - * - * SPDX-License-Identifier: EPL-2.0 - */ -package org.eclipse.hawkbit.tenancy.configuration; - -import org.eclipse.hawkbit.exception.AbstractServerRtException; -import org.eclipse.hawkbit.exception.SpServerError; - -/** - * The {@link #InvalidTenantConfigurationKeyException} is thrown when an invalid - * configuration key is used. - */ -public class InvalidTenantConfigurationKeyException extends AbstractServerRtException { - - private static final long serialVersionUID = 1L; - private static final SpServerError THIS_ERROR = SpServerError.SP_CONFIGURATION_KEY_INVALID; - - /** - * Default constructor. - */ - public InvalidTenantConfigurationKeyException() { - super(THIS_ERROR); - } - - /** - * Parameterized constructor. - * - * @param cause of the exception - */ - public InvalidTenantConfigurationKeyException(final Throwable cause) { - super(THIS_ERROR, cause); - } - - /** - * Parameterized constructor. - * - * @param message of the exception - * @param cause of the exception - */ - public InvalidTenantConfigurationKeyException(final String message, final Throwable cause) { - super(message, THIS_ERROR, cause); - } - - /** - * Parameterized constructor. - * - * @param message of the exception - */ - public InvalidTenantConfigurationKeyException(final String message) { - super(message, THIS_ERROR); - } - -} diff --git a/hawkbit-dmf/hawkbit-dmf-amqp/src/main/java/org/eclipse/hawkbit/amqp/AmqpMessageHandlerService.java b/hawkbit-dmf/hawkbit-dmf-amqp/src/main/java/org/eclipse/hawkbit/amqp/AmqpMessageHandlerService.java index f3aed3614..72f68a20a 100644 --- a/hawkbit-dmf/hawkbit-dmf-amqp/src/main/java/org/eclipse/hawkbit/amqp/AmqpMessageHandlerService.java +++ b/hawkbit-dmf/hawkbit-dmf-amqp/src/main/java/org/eclipse/hawkbit/amqp/AmqpMessageHandlerService.java @@ -33,7 +33,7 @@ import org.eclipse.hawkbit.dmf.json.model.DmfAutoConfirmation; import org.eclipse.hawkbit.dmf.json.model.DmfCreateThing; import org.eclipse.hawkbit.dmf.json.model.DmfUpdateMode; import org.eclipse.hawkbit.im.authentication.SpPermission.SpringEvalExpressions; -import org.eclipse.hawkbit.im.authentication.TenantAwareAuthenticationDetails; +import org.eclipse.hawkbit.tenancy.TenantAwareAuthenticationDetails; import org.eclipse.hawkbit.repository.ConfirmationManagement; import org.eclipse.hawkbit.repository.ControllerManagement; import org.eclipse.hawkbit.repository.EntityFactory; diff --git a/hawkbit-http-security/src/main/java/org/eclipse/hawkbit/security/ControllerTenantAwareAuthenticationDetailsSource.java b/hawkbit-http-security/src/main/java/org/eclipse/hawkbit/security/ControllerTenantAwareAuthenticationDetailsSource.java index c407c261e..4cbf4fa01 100644 --- a/hawkbit-http-security/src/main/java/org/eclipse/hawkbit/security/ControllerTenantAwareAuthenticationDetailsSource.java +++ b/hawkbit-http-security/src/main/java/org/eclipse/hawkbit/security/ControllerTenantAwareAuthenticationDetailsSource.java @@ -14,7 +14,7 @@ import java.util.Map; import jakarta.servlet.http.HttpServletRequest; import lombok.extern.slf4j.Slf4j; -import org.eclipse.hawkbit.im.authentication.TenantAwareAuthenticationDetails; +import org.eclipse.hawkbit.tenancy.TenantAwareAuthenticationDetails; import org.eclipse.hawkbit.util.UrlUtils; import org.springframework.security.authentication.AuthenticationDetailsSource; import org.springframework.util.AntPathMatcher; diff --git a/hawkbit-repository/hawkbit-repository-api/src/main/java/org/eclipse/hawkbit/repository/TenantConfigurationManagement.java b/hawkbit-repository/hawkbit-repository-api/src/main/java/org/eclipse/hawkbit/repository/TenantConfigurationManagement.java index 084247c15..f4f18ba4a 100644 --- a/hawkbit-repository/hawkbit-repository-api/src/main/java/org/eclipse/hawkbit/repository/TenantConfigurationManagement.java +++ b/hawkbit-repository/hawkbit-repository-api/src/main/java/org/eclipse/hawkbit/repository/TenantConfigurationManagement.java @@ -23,7 +23,7 @@ import org.eclipse.hawkbit.repository.model.Target; import org.eclipse.hawkbit.repository.model.TenantConfigurationValue; import org.eclipse.hawkbit.tenancy.configuration.DurationHelper; import org.eclipse.hawkbit.tenancy.configuration.TenantConfigurationProperties.TenantConfigurationKey; -import org.eclipse.hawkbit.tenancy.configuration.validator.TenantConfigurationValidatorException; +import org.eclipse.hawkbit.repository.exception.TenantConfigurationValidatorException; import org.springframework.core.convert.ConversionFailedException; import org.springframework.core.env.Environment; import org.springframework.security.access.prepost.PreAuthorize; diff --git a/hawkbit-repository/hawkbit-repository-api/src/main/java/org/eclipse/hawkbit/repository/exception/InvalidTenantConfigurationKeyException.java b/hawkbit-repository/hawkbit-repository-api/src/main/java/org/eclipse/hawkbit/repository/exception/InvalidTenantConfigurationKeyException.java index b122a6715..4a2b28bf0 100644 --- a/hawkbit-repository/hawkbit-repository-api/src/main/java/org/eclipse/hawkbit/repository/exception/InvalidTenantConfigurationKeyException.java +++ b/hawkbit-repository/hawkbit-repository-api/src/main/java/org/eclipse/hawkbit/repository/exception/InvalidTenantConfigurationKeyException.java @@ -9,6 +9,8 @@ */ package org.eclipse.hawkbit.repository.exception; +import java.io.Serial; + import org.eclipse.hawkbit.exception.AbstractServerRtException; import org.eclipse.hawkbit.exception.SpServerError; @@ -18,42 +20,12 @@ import org.eclipse.hawkbit.exception.SpServerError; */ public class InvalidTenantConfigurationKeyException extends AbstractServerRtException { + @Serial private static final long serialVersionUID = 1L; + private static final SpServerError THIS_ERROR = SpServerError.SP_CONFIGURATION_KEY_INVALID; - /** - * Default constructor. - */ - public InvalidTenantConfigurationKeyException() { - super(THIS_ERROR); - } - - /** - * Parameterized constructor. - * - * @param cause of the exception - */ - public InvalidTenantConfigurationKeyException(final Throwable cause) { - super(THIS_ERROR, cause); - } - - /** - * Parameterized constructor. - * - * @param message of the exception - * @param cause of the exception - */ - public InvalidTenantConfigurationKeyException(final String message, final Throwable cause) { - super(message, THIS_ERROR, cause); - } - - /** - * Parameterized constructor. - * - * @param message of the exception - */ public InvalidTenantConfigurationKeyException(final String message) { super(message, THIS_ERROR); } - -} +} \ No newline at end of file diff --git a/hawkbit-core/src/main/java/org/eclipse/hawkbit/tenancy/configuration/validator/TenantConfigurationValidatorException.java b/hawkbit-repository/hawkbit-repository-api/src/main/java/org/eclipse/hawkbit/repository/exception/TenantConfigurationValidatorException.java similarity index 59% rename from hawkbit-core/src/main/java/org/eclipse/hawkbit/tenancy/configuration/validator/TenantConfigurationValidatorException.java rename to hawkbit-repository/hawkbit-repository-api/src/main/java/org/eclipse/hawkbit/repository/exception/TenantConfigurationValidatorException.java index a43bc4d8c..de7edd711 100644 --- a/hawkbit-core/src/main/java/org/eclipse/hawkbit/tenancy/configuration/validator/TenantConfigurationValidatorException.java +++ b/hawkbit-repository/hawkbit-repository-api/src/main/java/org/eclipse/hawkbit/repository/exception/TenantConfigurationValidatorException.java @@ -7,7 +7,9 @@ * * SPDX-License-Identifier: EPL-2.0 */ -package org.eclipse.hawkbit.tenancy.configuration.validator; +package org.eclipse.hawkbit.repository.exception; + +import java.io.Serial; import org.eclipse.hawkbit.exception.AbstractServerRtException; import org.eclipse.hawkbit.exception.SpServerError; @@ -18,35 +20,11 @@ import org.eclipse.hawkbit.exception.SpServerError; */ public class TenantConfigurationValidatorException extends AbstractServerRtException { + @Serial private static final long serialVersionUID = 1L; + private static final SpServerError THIS_ERROR = SpServerError.SP_CONFIGURATION_VALUE_INVALID; - /** - * Default constructor. - */ - public TenantConfigurationValidatorException() { - super(THIS_ERROR); - } - - /** - * Parameterized constructor. - * - * @param cause of the exception - */ - public TenantConfigurationValidatorException(final Throwable cause) { - super(THIS_ERROR, cause); - } - - /** - * Parameterized constructor. - * - * @param message of the exception - * @param cause of the exception - */ - public TenantConfigurationValidatorException(final String message, final Throwable cause) { - super(message, THIS_ERROR, cause); - } - /** * Parameterized constructor. * @@ -55,5 +33,4 @@ public class TenantConfigurationValidatorException extends AbstractServerRtExcep public TenantConfigurationValidatorException(final String message) { super(message, THIS_ERROR); } - -} +} \ No newline at end of file diff --git a/hawkbit-repository/hawkbit-repository-api/src/main/java/org/eclipse/hawkbit/tenancy/configuration/TenantConfigurationProperties.java b/hawkbit-repository/hawkbit-repository-api/src/main/java/org/eclipse/hawkbit/tenancy/configuration/TenantConfigurationProperties.java index 1c159f19a..3da5d9bf1 100644 --- a/hawkbit-repository/hawkbit-repository-api/src/main/java/org/eclipse/hawkbit/tenancy/configuration/TenantConfigurationProperties.java +++ b/hawkbit-repository/hawkbit-repository-api/src/main/java/org/eclipse/hawkbit/tenancy/configuration/TenantConfigurationProperties.java @@ -19,9 +19,9 @@ import lombok.ToString; import org.eclipse.hawkbit.ControllerPollProperties; import org.eclipse.hawkbit.HawkbitServerProperties.Anonymous.Download; import org.eclipse.hawkbit.repository.exception.InvalidTenantConfigurationKeyException; +import org.eclipse.hawkbit.repository.exception.TenantConfigurationValidatorException; import org.eclipse.hawkbit.tenancy.configuration.validator.TenantConfigurationStringValidator; import org.eclipse.hawkbit.tenancy.configuration.validator.TenantConfigurationValidator; -import org.eclipse.hawkbit.tenancy.configuration.validator.TenantConfigurationValidatorException; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.context.ApplicationContext; diff --git a/hawkbit-repository/hawkbit-repository-api/src/main/java/org/eclipse/hawkbit/tenancy/configuration/validator/TenantConfigurationPollingDurationValidator.java b/hawkbit-repository/hawkbit-repository-api/src/main/java/org/eclipse/hawkbit/tenancy/configuration/validator/TenantConfigurationPollingDurationValidator.java index 8c2a0312a..79b4e4639 100644 --- a/hawkbit-repository/hawkbit-repository-api/src/main/java/org/eclipse/hawkbit/tenancy/configuration/validator/TenantConfigurationPollingDurationValidator.java +++ b/hawkbit-repository/hawkbit-repository-api/src/main/java/org/eclipse/hawkbit/tenancy/configuration/validator/TenantConfigurationPollingDurationValidator.java @@ -14,6 +14,7 @@ import java.time.format.DateTimeParseException; import org.eclipse.hawkbit.ControllerPollProperties; import org.eclipse.hawkbit.tenancy.configuration.DurationHelper; +import org.eclipse.hawkbit.repository.exception.TenantConfigurationValidatorException; import org.springframework.beans.factory.annotation.Autowired; /** diff --git a/hawkbit-repository/hawkbit-repository-api/src/main/java/org/eclipse/hawkbit/tenancy/configuration/validator/TenantConfigurationValidator.java b/hawkbit-repository/hawkbit-repository-api/src/main/java/org/eclipse/hawkbit/tenancy/configuration/validator/TenantConfigurationValidator.java index db1960c12..ded57dc8f 100644 --- a/hawkbit-repository/hawkbit-repository-api/src/main/java/org/eclipse/hawkbit/tenancy/configuration/validator/TenantConfigurationValidator.java +++ b/hawkbit-repository/hawkbit-repository-api/src/main/java/org/eclipse/hawkbit/tenancy/configuration/validator/TenantConfigurationValidator.java @@ -9,6 +9,8 @@ */ package org.eclipse.hawkbit.tenancy.configuration.validator; +import org.eclipse.hawkbit.repository.exception.TenantConfigurationValidatorException; + /** * base interface for clases which can validate tenant configuration values. */ diff --git a/hawkbit-repository/hawkbit-repository-api/src/main/java/org/eclipse/hawkbit/tenancy/configuration/validator/TenantConfigurationValidatorException.java b/hawkbit-repository/hawkbit-repository-api/src/main/java/org/eclipse/hawkbit/tenancy/configuration/validator/TenantConfigurationValidatorException.java deleted file mode 100644 index a43bc4d8c..000000000 --- a/hawkbit-repository/hawkbit-repository-api/src/main/java/org/eclipse/hawkbit/tenancy/configuration/validator/TenantConfigurationValidatorException.java +++ /dev/null @@ -1,59 +0,0 @@ -/** - * Copyright (c) 2015 Bosch Software Innovations GmbH and others - * - * This program and the accompanying materials are made - * available under the terms of the Eclipse Public License 2.0 - * which is available at https://www.eclipse.org/legal/epl-2.0/ - * - * SPDX-License-Identifier: EPL-2.0 - */ -package org.eclipse.hawkbit.tenancy.configuration.validator; - -import org.eclipse.hawkbit.exception.AbstractServerRtException; -import org.eclipse.hawkbit.exception.SpServerError; - -/** - * Exception which is thrown, when the validation of the configuration value has - * not been successful. - */ -public class TenantConfigurationValidatorException extends AbstractServerRtException { - - private static final long serialVersionUID = 1L; - private static final SpServerError THIS_ERROR = SpServerError.SP_CONFIGURATION_VALUE_INVALID; - - /** - * Default constructor. - */ - public TenantConfigurationValidatorException() { - super(THIS_ERROR); - } - - /** - * Parameterized constructor. - * - * @param cause of the exception - */ - public TenantConfigurationValidatorException(final Throwable cause) { - super(THIS_ERROR, cause); - } - - /** - * Parameterized constructor. - * - * @param message of the exception - * @param cause of the exception - */ - public TenantConfigurationValidatorException(final String message, final Throwable cause) { - super(message, THIS_ERROR, cause); - } - - /** - * Parameterized constructor. - * - * @param message of the exception - */ - public TenantConfigurationValidatorException(final String message) { - super(message, THIS_ERROR); - } - -} diff --git a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/management/JpaTenantConfigurationManagement.java b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/management/JpaTenantConfigurationManagement.java index dbb1e9332..f9fd34ee4 100644 --- a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/management/JpaTenantConfigurationManagement.java +++ b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/management/JpaTenantConfigurationManagement.java @@ -35,7 +35,7 @@ import org.eclipse.hawkbit.repository.model.helper.SystemSecurityContextHolder; import org.eclipse.hawkbit.security.SystemSecurityContext; import org.eclipse.hawkbit.tenancy.configuration.TenantConfigurationProperties; import org.eclipse.hawkbit.tenancy.configuration.TenantConfigurationProperties.TenantConfigurationKey; -import org.eclipse.hawkbit.tenancy.configuration.validator.TenantConfigurationValidatorException; +import org.eclipse.hawkbit.repository.exception.TenantConfigurationValidatorException; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.cache.Cache; import org.springframework.cache.CacheManager; diff --git a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/AbstractJpaBaseEntity.java b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/AbstractJpaBaseEntity.java index fa44413ac..7161a39e9 100644 --- a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/AbstractJpaBaseEntity.java +++ b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/AbstractJpaBaseEntity.java @@ -24,7 +24,7 @@ import jakarta.persistence.Version; import lombok.AccessLevel; import lombok.NoArgsConstructor; import lombok.Setter; -import org.eclipse.hawkbit.im.authentication.TenantAwareAuthenticationDetails; +import org.eclipse.hawkbit.tenancy.TenantAwareAuthenticationDetails; import org.eclipse.hawkbit.repository.model.BaseEntity; import org.springframework.data.annotation.CreatedBy; import org.springframework.data.annotation.CreatedDate; diff --git a/hawkbit-repository/hawkbit-repository-jpa/src/test/java/org/eclipse/hawkbit/repository/jpa/management/TenantConfigurationManagementTest.java b/hawkbit-repository/hawkbit-repository-jpa/src/test/java/org/eclipse/hawkbit/repository/jpa/management/TenantConfigurationManagementTest.java index 774b17ce8..ec00406b0 100644 --- a/hawkbit-repository/hawkbit-repository-jpa/src/test/java/org/eclipse/hawkbit/repository/jpa/management/TenantConfigurationManagementTest.java +++ b/hawkbit-repository/hawkbit-repository-jpa/src/test/java/org/eclipse/hawkbit/repository/jpa/management/TenantConfigurationManagementTest.java @@ -25,7 +25,7 @@ import org.eclipse.hawkbit.repository.jpa.AbstractJpaIntegrationTest; import org.eclipse.hawkbit.repository.model.TenantConfigurationValue; import org.eclipse.hawkbit.tenancy.configuration.DurationHelper; import org.eclipse.hawkbit.tenancy.configuration.TenantConfigurationProperties.TenantConfigurationKey; -import org.eclipse.hawkbit.tenancy.configuration.validator.TenantConfigurationValidatorException; +import org.eclipse.hawkbit.repository.exception.TenantConfigurationValidatorException; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; import org.springframework.context.EnvironmentAware; diff --git a/hawkbit-repository/hawkbit-repository-test/src/main/java/org/eclipse/hawkbit/repository/test/util/SecurityContextSwitch.java b/hawkbit-repository/hawkbit-repository-test/src/main/java/org/eclipse/hawkbit/repository/test/util/SecurityContextSwitch.java index 6e3a9d449..eee818d29 100644 --- a/hawkbit-repository/hawkbit-repository-test/src/main/java/org/eclipse/hawkbit/repository/test/util/SecurityContextSwitch.java +++ b/hawkbit-repository/hawkbit-repository-test/src/main/java/org/eclipse/hawkbit/repository/test/util/SecurityContextSwitch.java @@ -17,8 +17,8 @@ import java.util.Objects; import java.util.concurrent.Callable; import org.eclipse.hawkbit.im.authentication.SpPermission; -import org.eclipse.hawkbit.im.authentication.TenantAwareAuthenticationDetails; -import org.eclipse.hawkbit.im.authentication.TenantAwareUser; +import org.eclipse.hawkbit.tenancy.TenantAwareAuthenticationDetails; +import org.eclipse.hawkbit.tenancy.TenantAwareUser; import org.eclipse.hawkbit.repository.model.helper.SystemManagementHolder; import org.springframework.security.authentication.TestingAuthenticationToken; import org.springframework.security.core.Authentication; diff --git a/hawkbit-rest/hawkbit-mgmt-resource/src/main/java/org/eclipse/hawkbit/mgmt/rest/resource/MgmtTenantManagementResource.java b/hawkbit-rest/hawkbit-mgmt-resource/src/main/java/org/eclipse/hawkbit/mgmt/rest/resource/MgmtTenantManagementResource.java index 0dd81874d..db81ffd8e 100644 --- a/hawkbit-rest/hawkbit-mgmt-resource/src/main/java/org/eclipse/hawkbit/mgmt/rest/resource/MgmtTenantManagementResource.java +++ b/hawkbit-rest/hawkbit-mgmt-resource/src/main/java/org/eclipse/hawkbit/mgmt/rest/resource/MgmtTenantManagementResource.java @@ -24,7 +24,7 @@ import org.eclipse.hawkbit.repository.TenantConfigurationManagement; import org.eclipse.hawkbit.repository.exception.InsufficientPermissionException; import org.eclipse.hawkbit.repository.model.TenantConfigurationValue; import org.eclipse.hawkbit.tenancy.configuration.TenantConfigurationProperties; -import org.eclipse.hawkbit.tenancy.configuration.validator.TenantConfigurationValidatorException; +import org.eclipse.hawkbit.repository.exception.TenantConfigurationValidatorException; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.PathVariable; diff --git a/hawkbit-security-core/pom.xml b/hawkbit-security-core/pom.xml index 1033743e1..670f4b028 100644 --- a/hawkbit-security-core/pom.xml +++ b/hawkbit-security-core/pom.xml @@ -35,10 +35,6 @@ org.springframework.security spring-security-oauth2-core - - org.springframework.security - spring-security-config - org.springframework.security spring-security-web diff --git a/hawkbit-security-core/src/main/java/org/eclipse/hawkbit/im/authentication/StaticAuthenticationProvider.java b/hawkbit-security-core/src/main/java/org/eclipse/hawkbit/im/authentication/StaticAuthenticationProvider.java index b9fa2befe..ce7acbf96 100644 --- a/hawkbit-security-core/src/main/java/org/eclipse/hawkbit/im/authentication/StaticAuthenticationProvider.java +++ b/hawkbit-security-core/src/main/java/org/eclipse/hawkbit/im/authentication/StaticAuthenticationProvider.java @@ -17,6 +17,9 @@ import java.util.List; import java.util.function.Supplier; import java.util.regex.Pattern; +import org.eclipse.hawkbit.tenancy.TenantAwareAuthenticationDetails; +import org.eclipse.hawkbit.tenancy.TenantAwareUser; +import org.eclipse.hawkbit.tenancy.TenantAwareUserProperties; import org.springframework.boot.autoconfigure.security.SecurityProperties; import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; import org.springframework.security.authentication.dao.DaoAuthenticationProvider; diff --git a/hawkbit-security-core/src/main/java/org/eclipse/hawkbit/security/MdcHandler.java b/hawkbit-security-core/src/main/java/org/eclipse/hawkbit/security/MdcHandler.java index 2083979d8..e74bf663a 100644 --- a/hawkbit-security-core/src/main/java/org/eclipse/hawkbit/security/MdcHandler.java +++ b/hawkbit-security-core/src/main/java/org/eclipse/hawkbit/security/MdcHandler.java @@ -20,7 +20,7 @@ import jakarta.servlet.http.HttpServletResponse; import lombok.AccessLevel; import lombok.NoArgsConstructor; -import org.eclipse.hawkbit.im.authentication.TenantAwareAuthenticationDetails; +import org.eclipse.hawkbit.tenancy.TenantAwareAuthenticationDetails; import org.slf4j.MDC; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; diff --git a/hawkbit-security-core/src/main/java/org/eclipse/hawkbit/security/SecurityContextTenantAware.java b/hawkbit-security-core/src/main/java/org/eclipse/hawkbit/security/SecurityContextTenantAware.java index fdb59dfc1..71296ea04 100644 --- a/hawkbit-security-core/src/main/java/org/eclipse/hawkbit/security/SecurityContextTenantAware.java +++ b/hawkbit-security-core/src/main/java/org/eclipse/hawkbit/security/SecurityContextTenantAware.java @@ -20,8 +20,8 @@ import java.util.function.Supplier; import org.eclipse.hawkbit.ContextAware; import org.eclipse.hawkbit.im.authentication.SpPermission.SpringEvalExpressions; -import org.eclipse.hawkbit.im.authentication.TenantAwareAuthenticationDetails; -import org.eclipse.hawkbit.im.authentication.TenantAwareUser; +import org.eclipse.hawkbit.tenancy.TenantAwareAuthenticationDetails; +import org.eclipse.hawkbit.tenancy.TenantAwareUser; import org.eclipse.hawkbit.tenancy.TenantAware; import org.eclipse.hawkbit.tenancy.UserAuthoritiesResolver; import org.springframework.lang.Nullable; diff --git a/hawkbit-security-core/src/main/java/org/eclipse/hawkbit/security/SystemSecurityContext.java b/hawkbit-security-core/src/main/java/org/eclipse/hawkbit/security/SystemSecurityContext.java index ae0e0568f..2119b9445 100644 --- a/hawkbit-security-core/src/main/java/org/eclipse/hawkbit/security/SystemSecurityContext.java +++ b/hawkbit-security-core/src/main/java/org/eclipse/hawkbit/security/SystemSecurityContext.java @@ -20,7 +20,7 @@ import jakarta.validation.constraints.NotNull; import lombok.extern.slf4j.Slf4j; import org.eclipse.hawkbit.im.authentication.SpPermission.SpringEvalExpressions; -import org.eclipse.hawkbit.im.authentication.TenantAwareAuthenticationDetails; +import org.eclipse.hawkbit.tenancy.TenantAwareAuthenticationDetails; import org.eclipse.hawkbit.tenancy.TenantAware; import org.springframework.security.access.hierarchicalroles.RoleHierarchy; import org.springframework.security.authentication.AnonymousAuthenticationToken; diff --git a/hawkbit-security-integration/src/main/java/org/eclipse/hawkbit/security/TenantAwareWebAuthenticationDetails.java b/hawkbit-security-integration/src/main/java/org/eclipse/hawkbit/security/TenantAwareWebAuthenticationDetails.java index 63fa88a9c..fd46a796e 100644 --- a/hawkbit-security-integration/src/main/java/org/eclipse/hawkbit/security/TenantAwareWebAuthenticationDetails.java +++ b/hawkbit-security-integration/src/main/java/org/eclipse/hawkbit/security/TenantAwareWebAuthenticationDetails.java @@ -11,7 +11,7 @@ package org.eclipse.hawkbit.security; import jakarta.servlet.http.HttpServletRequest; -import org.eclipse.hawkbit.im.authentication.TenantAwareAuthenticationDetails; +import org.eclipse.hawkbit.tenancy.TenantAwareAuthenticationDetails; /** * Extends the {@link TenantAwareAuthenticationDetails} to web information to