From b4837df76c889b1c945e47600f444e7e741c45ca Mon Sep 17 00:00:00 2001 From: Anthony Stirling <77850077+Frooodle@users.noreply.github.com.> Date: Thu, 28 Nov 2024 19:41:39 +0000 Subject: [PATCH] ee flag for saml --- .../SPDF/config/security/SecurityConfiguration.java | 13 +++++++++++-- .../software/SPDF/service/PdfMetadataService.java | 9 ++++++--- 2 files changed, 17 insertions(+), 5 deletions(-) diff --git a/src/main/java/stirling/software/SPDF/config/security/SecurityConfiguration.java b/src/main/java/stirling/software/SPDF/config/security/SecurityConfiguration.java index 66e961bae..be3d8e307 100644 --- a/src/main/java/stirling/software/SPDF/config/security/SecurityConfiguration.java +++ b/src/main/java/stirling/software/SPDF/config/security/SecurityConfiguration.java @@ -96,6 +96,11 @@ public class SecurityConfiguration { @Qualifier("loginEnabled") public boolean loginEnabledValue; + @Autowired + @Qualifier("runningEE") + public boolean runningEE; + + @Autowired ApplicationProperties applicationProperties; @Autowired private UserAuthenticationFilter userAuthenticationFilter; @@ -263,7 +268,7 @@ public class SecurityConfiguration { } // Handle SAML - if (applicationProperties.getSecurity().isSaml2Activ()) { + if (applicationProperties.getSecurity().isSaml2Activ() && runningEE) { http.authenticationProvider(samlAuthenticationProvider()) .saml2Login(saml2 -> { try { @@ -306,13 +311,17 @@ public class SecurityConfiguration { @Bean + @ConditionalOnProperty( + value = "security.oauth2.enabled", + havingValue = "true", + matchIfMissing = false) public AuthenticationProvider samlAuthenticationProvider() { OpenSaml4AuthenticationProvider provider = new OpenSaml4AuthenticationProvider(); provider.setResponseAuthenticationConverter( new CustomSaml2ResponseAuthenticationConverter(userService)); return provider; } - // Client Registration Repository for OAUTH2 OIDC Login + @Bean @ConditionalOnProperty( value = "security.oauth2.enabled", diff --git a/src/main/java/stirling/software/SPDF/service/PdfMetadataService.java b/src/main/java/stirling/software/SPDF/service/PdfMetadataService.java index 373b4c916..61375a5a9 100644 --- a/src/main/java/stirling/software/SPDF/service/PdfMetadataService.java +++ b/src/main/java/stirling/software/SPDF/service/PdfMetadataService.java @@ -17,15 +17,18 @@ public class PdfMetadataService { private final ApplicationProperties applicationProperties; private final String stirlingPDFLabel; private final UserServiceInterface userService; - + private final boolean runningEE; + @Autowired public PdfMetadataService( ApplicationProperties applicationProperties, @Qualifier("StirlingPDFLabel") String stirlingPDFLabel, + @Qualifier("runningEE") boolean runningEE, @Autowired(required = false) UserServiceInterface userService) { this.applicationProperties = applicationProperties; this.stirlingPDFLabel = stirlingPDFLabel; this.userService = userService; + this.runningEE = runningEE; } public PdfMetadata extractMetadataFromPdf(PDDocument pdf) { @@ -64,7 +67,7 @@ public class PdfMetadataService { if (applicationProperties .getEnterpriseEdition() .getCustomMetadata() - .isAutoUpdateMetadata()) { + .isAutoUpdateMetadata() && runningEE) { creator = applicationProperties.getEnterpriseEdition().getCustomMetadata().getCreator(); pdf.getDocumentInformation().setProducer(stirlingPDFLabel); @@ -86,7 +89,7 @@ public class PdfMetadataService { if (applicationProperties .getEnterpriseEdition() .getCustomMetadata() - .isAutoUpdateMetadata()) { + .isAutoUpdateMetadata() && runningEE) { author = applicationProperties.getEnterpriseEdition().getCustomMetadata().getAuthor(); if (userService != null) {