diff --git a/autograde-service/src/main/java/ch/epfl/autograde/auth/token/ShareSecretAuthentication.java b/autograde-service/src/main/java/ch/epfl/autograde/auth/token/SharedSecretAuthentication.java similarity index 89% rename from autograde-service/src/main/java/ch/epfl/autograde/auth/token/ShareSecretAuthentication.java rename to autograde-service/src/main/java/ch/epfl/autograde/auth/token/SharedSecretAuthentication.java index 0a4e357bcd1b1530e9a20f45dfeb09a317c745d2..13a8592fe4392188ed38f5a5a54eff40afe5f2f9 100644 --- a/autograde-service/src/main/java/ch/epfl/autograde/auth/token/ShareSecretAuthentication.java +++ b/autograde-service/src/main/java/ch/epfl/autograde/auth/token/SharedSecretAuthentication.java @@ -10,7 +10,7 @@ import java.util.Collection; * * @author Hamza REMMAL (hamza.remmal@epfl.ch) */ -public final class ShareSecretAuthentication implements Authentication { +public final class SharedSecretAuthentication implements Authentication { /** ??? */ private boolean authenticated; @@ -23,7 +23,7 @@ public final class ShareSecretAuthentication implements Authentication { * @param key ??? * @param authenticated ??? */ - public ShareSecretAuthentication(String key, boolean authenticated) { + public SharedSecretAuthentication(String key, boolean authenticated) { this.key = key; this.authenticated = authenticated; } diff --git a/autograde-service/src/main/java/ch/epfl/autograde/auth/token/SharedSecretAuthenticationConverter.java b/autograde-service/src/main/java/ch/epfl/autograde/auth/token/SharedSecretAuthenticationConverter.java index 3245cf4045982e2cf2961451e9ccecc62578010c..94a69d2f87e5509645867b5b43e2e3ab5b5636b2 100644 --- a/autograde-service/src/main/java/ch/epfl/autograde/auth/token/SharedSecretAuthenticationConverter.java +++ b/autograde-service/src/main/java/ch/epfl/autograde/auth/token/SharedSecretAuthenticationConverter.java @@ -8,14 +8,14 @@ import org.springframework.security.web.authentication.AuthenticationConverter; public final class SharedSecretAuthenticationConverter implements AuthenticationConverter { @Override - public ShareSecretAuthentication convert(HttpServletRequest request) { + public SharedSecretAuthentication convert(HttpServletRequest request) { var header = request.getHeader("API-KEY"); if (header == null) return null; header = header.trim(); if (header.isEmpty()) { throw new BadCredentialsException("Empty authentication token"); } - return new ShareSecretAuthentication(header, false); + return new SharedSecretAuthentication(header, false); } } diff --git a/autograde-service/src/main/java/ch/epfl/autograde/auth/token/ShareSecretAuthenticationProvider.java b/autograde-service/src/main/java/ch/epfl/autograde/auth/token/SharedSecretAuthenticationProvider.java similarity index 81% rename from autograde-service/src/main/java/ch/epfl/autograde/auth/token/ShareSecretAuthenticationProvider.java rename to autograde-service/src/main/java/ch/epfl/autograde/auth/token/SharedSecretAuthenticationProvider.java index abafe2d38dad9b9a2906f79b4ffed9c15304d6d2..3799568bad94ee9726f9db66022bc1831ebf3b85 100644 --- a/autograde-service/src/main/java/ch/epfl/autograde/auth/token/ShareSecretAuthenticationProvider.java +++ b/autograde-service/src/main/java/ch/epfl/autograde/auth/token/SharedSecretAuthenticationProvider.java @@ -17,7 +17,7 @@ import static java.util.Objects.isNull; */ @Component @RequiredArgsConstructor -public class ShareSecretAuthenticationProvider implements AuthenticationProvider { +public class SharedSecretAuthenticationProvider implements AuthenticationProvider { /** ??? */ private final AutogradeAuthConfig config; @@ -30,11 +30,11 @@ public class ShareSecretAuthenticationProvider implements AuthenticationProvider */ @Override public Authentication authenticate(Authentication authentication) throws AuthenticationException { - var keyAuth = (ShareSecretAuthentication) authentication; + var keyAuth = (SharedSecretAuthentication) authentication; if (isNull(keyAuth.getKey())) return authentication; if (keyAuth.getKey().equals(config.api().key())) - return new ShareSecretAuthentication(keyAuth.getKey(), true); + return new SharedSecretAuthentication(keyAuth.getKey(), true); else throw new BadCredentialsException("API KEY IS NOT CORRECT"); } @@ -46,7 +46,7 @@ public class ShareSecretAuthenticationProvider implements AuthenticationProvider */ @Override public boolean supports(Class<?> authenticationType) { - return ShareSecretAuthentication.class.equals(authenticationType); + return SharedSecretAuthentication.class.equals(authenticationType); } } diff --git a/autograde-service/src/main/java/ch/epfl/autograde/auth/token/SharedSecretConfigurer.java b/autograde-service/src/main/java/ch/epfl/autograde/auth/token/SharedSecretConfigurer.java index aff00633319fe11f9dce091c1bec6d69c453689e..a1433317539cc2203b0c581615e56fc3389c4d22 100644 --- a/autograde-service/src/main/java/ch/epfl/autograde/auth/token/SharedSecretConfigurer.java +++ b/autograde-service/src/main/java/ch/epfl/autograde/auth/token/SharedSecretConfigurer.java @@ -29,7 +29,7 @@ public final class SharedSecretConfigurer<B extends HttpSecurityBuilder<B>> exte @Override public void configure(B http) { - final var filter = new ShareSecretFilter(manager, this.authenticationEntryPoint); + final var filter = new SharedSecretFilter(manager, this.authenticationEntryPoint); final var rememberMe = http.getSharedObject(RememberMeServices.class); if (rememberMe != null) filter.setRememberMeServices(rememberMe); diff --git a/autograde-service/src/main/java/ch/epfl/autograde/auth/token/ShareSecretFilter.java b/autograde-service/src/main/java/ch/epfl/autograde/auth/token/SharedSecretFilter.java similarity index 96% rename from autograde-service/src/main/java/ch/epfl/autograde/auth/token/ShareSecretFilter.java rename to autograde-service/src/main/java/ch/epfl/autograde/auth/token/SharedSecretFilter.java index a4105cb42e087929e44d51ed46f1dde4e7a16195..4f47edfef5ec58c93632b4631524ed92aa0e4094 100644 --- a/autograde-service/src/main/java/ch/epfl/autograde/auth/token/ShareSecretFilter.java +++ b/autograde-service/src/main/java/ch/epfl/autograde/auth/token/SharedSecretFilter.java @@ -21,7 +21,7 @@ import org.springframework.web.filter.OncePerRequestFilter; import java.io.IOException; @Slf4j -public final class ShareSecretFilter extends OncePerRequestFilter { +public final class SharedSecretFilter extends OncePerRequestFilter { private SecurityContextHolderStrategy securityContextHolderStrategy = SecurityContextHolder .getContextHolderStrategy(); @@ -42,7 +42,7 @@ public final class ShareSecretFilter extends OncePerRequestFilter { * allowing the request to proceed down the filter chain. * @param authenticationManager the bean to submit authentication requests to */ - public ShareSecretFilter(AuthenticationManager authenticationManager, AuthenticationEntryPoint entryPoint) { + public SharedSecretFilter(AuthenticationManager authenticationManager, AuthenticationEntryPoint entryPoint) { Assert.notNull(authenticationManager, "authenticationManager cannot be null"); this.authenticationManager = authenticationManager; this.authenticationEntryPoint = entryPoint; diff --git a/autograde-service/src/main/java/ch/epfl/autograde/config/SecurityConfig.java b/autograde-service/src/main/java/ch/epfl/autograde/config/SecurityConfig.java index 3353156128e10053311c79376aa12ebe9110e16b..a75312e8c72abb9caad2a2e50c686f5e675fbf58 100644 --- a/autograde-service/src/main/java/ch/epfl/autograde/config/SecurityConfig.java +++ b/autograde-service/src/main/java/ch/epfl/autograde/config/SecurityConfig.java @@ -2,7 +2,7 @@ package ch.epfl.autograde.config; import ch.epfl.autograde.auth.AutogradeAuthorities; import ch.epfl.autograde.auth.ldap.EPFLAuthoritiesPopulator; -import ch.epfl.autograde.auth.token.ShareSecretAuthenticationProvider; +import ch.epfl.autograde.auth.token.SharedSecretAuthenticationProvider; import ch.epfl.autograde.auth.token.SharedSecretConfigurer; import ch.epfl.autograde.properties.AutogradeAuthConfig; import lombok.RequiredArgsConstructor; @@ -47,7 +47,7 @@ public class SecurityConfig { @Bean @Order(1) public SecurityFilterChain filterChain(HttpSecurity http, - ShareSecretAuthenticationProvider provider, + SharedSecretAuthenticationProvider provider, @Qualifier("ldapAuthenticationManager") AuthenticationManager manager ) throws Exception { return http diff --git a/autograde-service/src/test/java/ch/epfl/autograde/controller/api/v1/InfoControllerTest.java b/autograde-service/src/test/java/ch/epfl/autograde/controller/api/v1/InfoControllerTest.java index fe2749fa8a7dc3bf4de18ca858f18d926869b8a1..3963d96bfec3e51806ca30803eda593d64b3e751 100644 --- a/autograde-service/src/test/java/ch/epfl/autograde/controller/api/v1/InfoControllerTest.java +++ b/autograde-service/src/test/java/ch/epfl/autograde/controller/api/v1/InfoControllerTest.java @@ -1,5 +1,6 @@ package ch.epfl.autograde.controller.api.v1; +import ch.epfl.autograde.auth.token.SharedSecretAuthentication; import ch.epfl.autograde.utils.context.WithSharedSecretAuthentication; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; @@ -21,7 +22,7 @@ import static org.springframework.test.web.servlet.result.MockMvcResultMatchers. * and the {@link WithSharedSecretAuthentication} annotation to simulate authenticated requests * * @see ch.epfl.autograde.controller.api.v1.InfoController - * @see ch.epfl.autograde.auth.token.ShareSecretAuthentication + * @see SharedSecretAuthentication * @see ch.epfl.autograde.config.SecurityConfig * * @author Hamza REMMAL (hamza.remmal@epfl.ch) diff --git a/autograde-service/src/test/java/ch/epfl/autograde/controller/api/v1/PingControllerIntegrationTests.java b/autograde-service/src/test/java/ch/epfl/autograde/controller/api/v1/PingControllerIntegrationTests.java index ab1a2298ea1815dfaa1536f5a72058024f8b9987..82563e22de102e3630efcbd09dc75a3f398aac1d 100644 --- a/autograde-service/src/test/java/ch/epfl/autograde/controller/api/v1/PingControllerIntegrationTests.java +++ b/autograde-service/src/test/java/ch/epfl/autograde/controller/api/v1/PingControllerIntegrationTests.java @@ -1,5 +1,6 @@ package ch.epfl.autograde.controller.api.v1; +import ch.epfl.autograde.auth.token.SharedSecretAuthentication; import ch.epfl.autograde.filters.AssignRequestIdFilter; import ch.epfl.autograde.utils.context.WithSharedSecretAuthentication; import org.junit.jupiter.api.DisplayName; @@ -26,7 +27,7 @@ import static org.springframework.test.web.servlet.result.MockMvcResultMatchers. * with <i>shared secret</i> authentication. * * @see ch.epfl.autograde.controller.api.v1.PingController - * @see ch.epfl.autograde.auth.token.ShareSecretAuthentication + * @see SharedSecretAuthentication * @see ch.epfl.autograde.config.SecurityConfig * * @author Hamza REMMAL (hamza.remmal@epfl.ch) diff --git a/autograde-service/src/test/java/ch/epfl/autograde/utils/context/WithSharedSecretAuthenticationFactory.java b/autograde-service/src/test/java/ch/epfl/autograde/utils/context/WithSharedSecretAuthenticationFactory.java index 64f0c499d0f03eeec9e50a1514b453a52aa2fc2b..b14c068c50552a674bd2423ffee63a256d580f28 100644 --- a/autograde-service/src/test/java/ch/epfl/autograde/utils/context/WithSharedSecretAuthenticationFactory.java +++ b/autograde-service/src/test/java/ch/epfl/autograde/utils/context/WithSharedSecretAuthenticationFactory.java @@ -1,7 +1,6 @@ package ch.epfl.autograde.utils.context; -import ch.epfl.autograde.auth.token.ShareSecretAuthentication; -import org.springframework.beans.factory.annotation.Value; +import ch.epfl.autograde.auth.token.SharedSecretAuthentication; import org.springframework.security.core.context.SecurityContext; import org.springframework.security.core.context.SecurityContextHolder; import org.springframework.security.core.context.SecurityContextHolderStrategy; @@ -19,7 +18,7 @@ public final class WithSharedSecretAuthenticationFactory implements WithSecurity @Override public SecurityContext createSecurityContext(WithSharedSecretAuthentication annotation) { - var authentication = new ShareSecretAuthentication(annotation.secret(), true); + var authentication = new SharedSecretAuthentication(annotation.secret(), true); var context = this.securityContextHolderStrategy.createEmptyContext(); context.setAuthentication(authentication); return context;