From 8a52aea7b6d4f94b682631e0ca2670cf59b644f9 Mon Sep 17 00:00:00 2001 From: "konstantina.galouni" Date: Thu, 22 Apr 2021 09:12:49 +0000 Subject: [PATCH] [Trunk | Authorization Library]: 1. Added folder /controllers. 2. AuthorizationLibraryCheckDeployController.java: [NEW] Controller added and a. "hello()" method (@RequestMapping(value = {"", "/health_check"}, method = RequestMethod.GET)) which just prints and returns a greeting message. b. "checkEverything()" method @RequestMapping(value = "/health_check/advanced", method = RequestMethod.GET) only accessible by PORTAL ADMINS which checks connection with db and prints properties. --- ...orizationLibraryCheckDeployController.java | 41 +++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 src/main/java/eu/dnetlib/uoaauthorizationlibrary/controllers/AuthorizationLibraryCheckDeployController.java diff --git a/src/main/java/eu/dnetlib/uoaauthorizationlibrary/controllers/AuthorizationLibraryCheckDeployController.java b/src/main/java/eu/dnetlib/uoaauthorizationlibrary/controllers/AuthorizationLibraryCheckDeployController.java new file mode 100644 index 0000000..3744e42 --- /dev/null +++ b/src/main/java/eu/dnetlib/uoaauthorizationlibrary/controllers/AuthorizationLibraryCheckDeployController.java @@ -0,0 +1,41 @@ +package eu.dnetlib.uoaauthorizationlibrary.controllers; + +import eu.dnetlib.uoaauthorizationlibrary.configuration.AuthorizationConfiguration; +import eu.dnetlib.uoaauthorizationlibrary.configuration.SecurityConfig; +import org.apache.log4j.Logger; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.CrossOrigin; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RestController; + +import java.util.HashMap; +import java.util.Map; + +@RestController +@CrossOrigin(origins = "*") +@RequestMapping("/authorization-library") +public class AuthorizationLibraryCheckDeployController { + private final Logger log = Logger.getLogger(this.getClass()); + + @Autowired + private SecurityConfig securityConfig; + + @RequestMapping(value = {"", "/health_check"}, method = RequestMethod.GET) + public String hello() { + log.debug("Hello from uoa-authorization-service!"); + return "Hello from uoa-authorization-service!"; + } + + @PreAuthorize("hasAnyAuthority(@AuthorizationService.PORTAL_ADMIN)") + @RequestMapping(value = "/health_check/advanced", method = RequestMethod.GET) + public Map checkEverything() { + Map response = new HashMap<>(); + + response.put("authorization.security.userInfoUrl", securityConfig.getUserInfoUrl()); + response.put("authorization.security.originServer", securityConfig.getOriginServer()); + + return response; + } +}