From 0141df20b1f533cd2acabdf7ea986aebab8d6868 Mon Sep 17 00:00:00 2001 From: Patrick Brady Date: Tue, 24 Mar 2020 15:44:15 -0700 Subject: Authentication support for cdt -Adding a password box to cdt -Adding a function to check login by making a request to appc -Moving username and authentication to session storage from localstorage so that it is not saved in the browser -Removing the hardcoded credentials from the cdt proxy since these are coming from the cdt login form now Change-Id: I8bd829a22d1b83829c1d53637dc1ad035d1030e9 Signed-off-by: Patrick Brady Issue-ID: APPC-1854 --- .../appc/cdt/service/controller/CdtController.java | 36 +++++++++++----------- 1 file changed, 18 insertions(+), 18 deletions(-) (limited to 'CdtProxyService/src/main/java/org/onap/appc/cdt/service/controller/CdtController.java') diff --git a/CdtProxyService/src/main/java/org/onap/appc/cdt/service/controller/CdtController.java b/CdtProxyService/src/main/java/org/onap/appc/cdt/service/controller/CdtController.java index 78a94f6..bdb12e5 100644 --- a/CdtProxyService/src/main/java/org/onap/appc/cdt/service/controller/CdtController.java +++ b/CdtProxyService/src/main/java/org/onap/appc/cdt/service/controller/CdtController.java @@ -1,7 +1,7 @@ /* ============LICENSE_START========================================== =================================================================== -Copyright (C) 2018 AT&T Intellectual Property. All rights reserved. +Copyright (C) 2018-2020 AT&T Intellectual Property. All rights reserved. =================================================================== Unless otherwise specified, all software contained herein is licensed @@ -41,6 +41,7 @@ import org.springframework.web.client.RestTemplate; import java.net.UnknownHostException; import java.util.Base64; +import java.util.List; /** * Created by Amaresh Kumar on 09/May/2018. @@ -62,11 +63,6 @@ public class CdtController { @Value("${restConf.backend.port}") private String restConfPort; - @Value("${restConf.username}") - private String restConfUsername; - - @Value("${restConf.password}") - private String restConfPassword; @ApiOperation(value = "Return All Test Data for a given user", response = CdtController.class) @ApiResponses(value = { @@ -87,8 +83,8 @@ public class CdtController { }) @RequestMapping(value = "/getDesigns", method = RequestMethod.POST) @CrossOrigin(origins = "*", allowedHeaders = "*") - public String getDesigns(@RequestBody String getDesignsRequest) throws UnknownHostException { - HttpEntity entity = getStringHttpEntity(getDesignsRequest); + public String getDesigns(@RequestBody String getDesignsRequest, @RequestHeader HttpHeaders requestHeader) throws UnknownHostException { + HttpEntity entity = getStringHttpEntity(getDesignsRequest, requestHeader); HttpClient httpClient = HttpClientBuilder.create().build(); ClientHttpRequestFactory factory = new HttpComponentsClientHttpRequestFactory(httpClient); restTemplate.setRequestFactory(factory); @@ -103,8 +99,8 @@ public class CdtController { }) @RequestMapping(value = "/testVnf", method = RequestMethod.POST) @CrossOrigin(origins = "*", allowedHeaders = "*") - public String testVnf(@RequestParam String urlAction, @RequestBody String testVnf) throws UnknownHostException { - HttpEntity entity = getStringHttpEntity(testVnf); + public String testVnf(@RequestParam String urlAction, @RequestBody String testVnf, @RequestHeader HttpHeaders requestHeader) throws UnknownHostException { + HttpEntity entity = getStringHttpEntity(testVnf, requestHeader); String testVnfResponse = restTemplate.postForObject(getUrl("testVnf")+urlAction, entity, String.class); return testVnfResponse; } @@ -116,8 +112,8 @@ public class CdtController { }) @RequestMapping(value = "/checkTestStatus", method = RequestMethod.POST) @CrossOrigin(origins = "*", allowedHeaders = "*") - public String checkTestStatus(@RequestBody String checkTestStatusRequest) throws UnknownHostException { - HttpEntity entity = getStringHttpEntity(checkTestStatusRequest); + public String checkTestStatus(@RequestBody String checkTestStatusRequest, @RequestHeader HttpHeaders requestHeader) throws UnknownHostException { + HttpEntity entity = getStringHttpEntity(checkTestStatusRequest, requestHeader); String checkTestStatusResponse = restTemplate.postForObject(getUrl("checkTestStatus"), entity, String.class); return checkTestStatusResponse; } @@ -129,19 +125,23 @@ public class CdtController { }) @RequestMapping(value = "/validateTemplate", method = RequestMethod.POST) @CrossOrigin(origins = "*", allowedHeaders = "*") - public String validateTemplate(@RequestBody String validateTemplateRequest) throws UnknownHostException { - HttpEntity entity = getStringHttpEntity(validateTemplateRequest); + public String validateTemplate(@RequestBody String validateTemplateRequest, @RequestHeader HttpHeaders requestHeader) throws UnknownHostException { + HttpEntity entity = getStringHttpEntity(validateTemplateRequest, requestHeader); String validateTemplateResponse = restTemplate.postForObject(getUrl("validateTemplate"), entity, String.class); return validateTemplateResponse; } - private HttpEntity getStringHttpEntity(@RequestBody String getDesignsRequest) { + private HttpEntity getStringHttpEntity(@RequestBody String getDesignsRequest, @RequestHeader HttpHeaders requestHeader) { + HttpHeaders headers = new HttpHeaders(); + if(requestHeader.containsKey("authorization")) { + List headerAuthValue = requestHeader.get("authorization"); + if(headerAuthValue != null && headerAuthValue.size() > 0) { + headers.set("authorization", headerAuthValue.get(0)); + } + } headers.setAccessControlAllowCredentials(true); headers.setContentType(MediaType.APPLICATION_JSON); - String planCredentials = restConfUsername + ":" + restConfPassword; - String base64Credentails = Base64.getEncoder().encodeToString(planCredentials.getBytes()); - headers.set("Authorization", "Basic " + base64Credentails); return new HttpEntity(getDesignsRequest, headers); } -- cgit 1.2.3-korg