Make tokenInfoUri explicit

This commit is contained in:
Dave Syer
2014-08-29 09:50:33 +01:00
parent ebda31d3e4
commit 7f80f76168
2 changed files with 16 additions and 10 deletions

View File

@@ -59,7 +59,7 @@
<dependency>
<groupId>org.springframework.security.oauth</groupId>
<artifactId>spring-security-oauth2</artifactId>
<version>2.0.3.BUILD-SNAPSHOT</version>
<version>2.0.3.RELEASE</version>
<optional>true</optional>
</dependency>
<dependency>

View File

@@ -34,6 +34,9 @@ public class CloudfoundrySsoProperties implements Validator {
@Value("${vcap.services.sso.credentials.tokenUri:}")
private String tokenUri;
@Value("${vcap.services.sso.credentials.tokenInfoUri:}")
private String tokenInfoUri;
@Value("${vcap.services.sso.credentials.authorizationUri:}")
private String authorizationUri;
@@ -42,17 +45,18 @@ public class CloudfoundrySsoProperties implements Validator {
@Value("${vcap.services.sso.credentials.clientSecret:}")
private String clientSecret;
private Home home = new Home();
@Data
public static class Home {
private String path = "/";
public static class Home {
private String path = "/";
private boolean secure = true;
}
public String getTokenInfoUri() {
return tokenUri.replace("/oauth/token", "/check_token");
return StringUtils.hasText(tokenInfoUri) ? tokenInfoUri : tokenUri.replace(
"/oauth/token", "/check_token");
}
public String getUserInfoUri() {
@@ -60,26 +64,28 @@ public class CloudfoundrySsoProperties implements Validator {
}
public String getLogoutUri(String redirectUrl) {
return tokenUri.replace("/oauth/token", "/logout.do?redirect="+redirectUrl);
return tokenUri.replace("/oauth/token", "/logout.do?redirect=" + redirectUrl);
}
@Override
public boolean supports(Class<?> clazz) {
return CloudfoundrySsoProperties.class.isAssignableFrom(clazz);
}
@Override
public void validate(Object target, Errors errors) {
CloudfoundrySsoProperties sso = (CloudfoundrySsoProperties) target;
if (StringUtils.hasText(sso.getClientId())) {
if (!StringUtils.hasText(sso.getAuthorizationUri())) {
errors.rejectValue("authorizeUri", "missing.authorizeUri", "Missing authorizeUri");
errors.rejectValue("authorizeUri", "missing.authorizeUri",
"Missing authorizeUri");
}
if (!StringUtils.hasText(sso.getTokenUri())) {
errors.rejectValue("tokenUri", "missing.tokenUri", "Missing tokenUri");
}
if (!StringUtils.hasText(sso.getClientSecret())) {
errors.rejectValue("clientSecret", "missing.clientSecret", "Missing clientSecret");
errors.rejectValue("clientSecret", "missing.clientSecret",
"Missing clientSecret");
}
}
}