2020-09-11 14:12:13 +02:00
|
|
|
package com.plannaplan.controllers;
|
|
|
|
|
2020-09-11 14:33:29 +02:00
|
|
|
import com.plannaplan.security.CasValidationExcepiton;
|
2020-09-11 14:12:13 +02:00
|
|
|
import com.plannaplan.security.CasValidator;
|
|
|
|
|
2020-09-11 14:33:29 +02:00
|
|
|
import org.springframework.http.HttpStatus;
|
2020-09-11 14:12:13 +02:00
|
|
|
import org.springframework.http.ResponseEntity;
|
|
|
|
import org.springframework.web.bind.annotation.CrossOrigin;
|
|
|
|
import org.springframework.web.bind.annotation.GetMapping;
|
|
|
|
import org.springframework.web.bind.annotation.RequestParam;
|
|
|
|
import org.springframework.web.bind.annotation.RestController;
|
|
|
|
|
|
|
|
@RestController
|
|
|
|
@CrossOrigin
|
|
|
|
public class TokenController {
|
|
|
|
|
|
|
|
public static String SERVICE_URL = "http://localhost:3000";
|
|
|
|
|
2020-09-11 14:33:29 +02:00
|
|
|
@GetMapping("/token")
|
|
|
|
public ResponseEntity<String> getToken(@RequestParam("ticket") final String ticket) {
|
|
|
|
CasValidator validator = new CasValidator(SERVICE_URL,ticket);
|
|
|
|
|
|
|
|
try{
|
|
|
|
String authority = validator.validate();
|
|
|
|
return new ResponseEntity<>(authority,HttpStatus.OK);
|
|
|
|
}
|
|
|
|
catch(CasValidationExcepiton e){
|
|
|
|
return new ResponseEntity<>("Wrong ticket",HttpStatus.UNAUTHORIZED);
|
|
|
|
}
|
|
|
|
catch(Exception e){
|
|
|
|
return new ResponseEntity<>(e.getMessage(),HttpStatus.INTERNAL_SERVER_ERROR);
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
2020-09-11 14:12:13 +02:00
|
|
|
}
|