Determined that init binder was not needed to fix default for Boolean require_auth_time; instead use defaultValue=\"true\" in the RequestParam declaration. Also fixed bug in ClientDetails service so that it will not blow up if the client has no redirect uris registered
parent
2084639828
commit
cf1ddf0457
|
@ -71,11 +71,13 @@ public class DefaultOAuth2ClientDetailsEntityService implements ClientDetailsEnt
|
|||
throw new IllegalArgumentException("Tried to save a new client with an existing ID: " + client.getId());
|
||||
}
|
||||
|
||||
for (String uri : client.getRegisteredRedirectUri()) {
|
||||
if (blacklistedSiteService.isBlacklisted(uri)) {
|
||||
throw new IllegalArgumentException("Client URI is blacklisted: " + uri);
|
||||
}
|
||||
}
|
||||
if (client.getRegisteredRedirectUri() != null) {
|
||||
for (String uri : client.getRegisteredRedirectUri()) {
|
||||
if (blacklistedSiteService.isBlacklisted(uri)) {
|
||||
throw new IllegalArgumentException("Client URI is blacklisted: " + uri);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// assign a random clientid if it's empty
|
||||
// NOTE: don't assign a random client secret without asking, since public clients have no secret
|
||||
|
|
|
@ -168,32 +168,6 @@ public class ClientDynamicRegistrationEndpoint {
|
|||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
//TODO: this is a stub, make it work
|
||||
@InitBinder({"require_auth_time"})
|
||||
public void authTimeInitBinder(WebDataBinder binder) {
|
||||
/*
|
||||
* Space-separated set of strings
|
||||
*/
|
||||
binder.registerCustomEditor(Boolean.class, new PropertyEditorSupport() {
|
||||
@Override
|
||||
public void setAsText(String text) throws IllegalArgumentException {
|
||||
if (Strings.isNullOrEmpty(text)) {
|
||||
setValue(false);
|
||||
} else {
|
||||
setValue(new Boolean(text));
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getAsText() {
|
||||
Boolean bool = (Boolean) getValue();
|
||||
return bool == null? "false" : bool.toString();
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
@RequestMapping(params = "type=client_associate", produces = "application/json")
|
||||
public String clientAssociate(
|
||||
|
@ -225,7 +199,7 @@ public class ClientDynamicRegistrationEndpoint {
|
|||
*/
|
||||
|
||||
@RequestParam(value = "default_max_age", required = false) Integer defaultMaxAge,
|
||||
@RequestParam(value = "require_auth_time", required = false) Boolean requireAuthTime,
|
||||
@RequestParam(value = "require_auth_time", required = false, defaultValue = "true") Boolean requireAuthTime,
|
||||
@RequestParam(value = "default_acr", required = false) String defaultAcr,
|
||||
ModelMap model
|
||||
) {
|
||||
|
|
Loading…
Reference in New Issue