use of org.springframework.web.client.DefaultResponseErrorHandler in project spring-security-oauth by spring-projects.
the class ClientCredentialsProviderTests method testInvalidCredentialsWithFormAuthentication.
@Test
@OAuth2ContextConfiguration(resource = InvalidClientCredentials.class, initialize = false)
public void testInvalidCredentialsWithFormAuthentication() throws Exception {
context.setAccessTokenProvider(new ClientCredentialsAccessTokenProvider() {
@Override
protected ResponseErrorHandler getResponseErrorHandler() {
return new DefaultResponseErrorHandler() {
public void handleError(ClientHttpResponse response) throws IOException {
responseHeaders = response.getHeaders();
responseStatus = response.getStatusCode();
}
};
}
});
try {
context.getAccessToken();
fail("Expected ResourceAccessException");
} catch (Exception e) {
// ignore
}
// System.err.println(responseHeaders);
String header = responseHeaders.getFirst("WWW-Authenticate");
assertTrue("Wrong header: " + header, header.contains("Form realm"));
assertEquals(HttpStatus.UNAUTHORIZED, responseStatus);
}
use of org.springframework.web.client.DefaultResponseErrorHandler in project apollo by ctripcorp.
the class AbstractControllerTest method postConstruct.
@PostConstruct
protected void postConstruct() {
restTemplate.setErrorHandler(new DefaultResponseErrorHandler());
restTemplate.setMessageConverters(httpMessageConverters.getConverters());
}
use of org.springframework.web.client.DefaultResponseErrorHandler in project apollo by ctripcorp.
the class AbstractIntegrationTest method postConstruct.
@PostConstruct
private void postConstruct() {
System.setProperty("spring.profiles.active", "test");
restTemplate.setErrorHandler(new DefaultResponseErrorHandler());
}
use of org.springframework.web.client.DefaultResponseErrorHandler in project webofneeds by researchstudio-sat.
the class LinkedDataRestBridge method createRestTemplateForReadingLinkedData.
private RestTemplate createRestTemplateForReadingLinkedData(String webID) throws Exception {
String privateKeyAlias = keyPairAliasDerivationStrategy.getAliasForAtomUri(webID);
RestTemplate template = CryptographyUtils.createSslRestTemplate(privateKeyAlias, this.keyStoreService.getUnderlyingKeyStore(), this.keyStoreService.getPassword(), this.trustStoreService.getUnderlyingKeyStore(), this.trustStrategy, readTimeout, connectionTimeout, true);
// prevent the RestTemplate from throwing an exception when the server responds
// with 4xx or 5xx status
// because we want to hand the orginal response back to the original caller in
// BridgeForLinkedDataController
template.setErrorHandler(new DefaultResponseErrorHandler() {
@Override
protected boolean hasError(final HttpStatus statusCode) {
return false;
}
});
return template;
}
use of org.springframework.web.client.DefaultResponseErrorHandler in project OsmAnd-tools by osmandapp.
the class WebSecurityConfiguration method oauthGithubUserService.
private DefaultOAuth2UserService oauthGithubUserService() {
// authorize with admin for specific group
RestTemplate restTemplate = new RestTemplate();
restTemplate.setErrorHandler(new DefaultResponseErrorHandler() {
@Override
public void handleError(ClientHttpResponse response) throws IOException {
}
});
DefaultOAuth2UserService service = new DefaultOAuth2UserService() {
@Override
public OAuth2User loadUser(OAuth2UserRequest userRequest) throws OAuth2AuthenticationException {
OAuth2User user = super.loadUser(userRequest);
if (user == null) {
return null;
}
Set<GrantedAuthority> authorities = new LinkedHashSet<>();
if (!Algorithms.isEmpty(adminOauth2Url) && user.getAttribute("url") != null && user.getAttribute("url").toString().contains("github.com")) {
Map<String, Object> orgs = checkPermissionAccess(adminOauth2Url, userRequest, user);
// orgs.get("privacy").equals("closed");
if (orgs != null) {
authorities.add(new SimpleGrantedAuthority(ROLE_ADMIN));
}
}
String userNameAttributeName = userRequest.getClientRegistration().getProviderDetails().getUserInfoEndpoint().getUserNameAttributeName();
return new DefaultOAuth2User(authorities, user.getAttributes(), userNameAttributeName);
}
private Map<String, Object> checkPermissionAccess(Object orgUrl, OAuth2UserRequest userRequest, OAuth2User user) {
String organizationUrl = String.valueOf(orgUrl);
HttpHeaders headers = new HttpHeaders();
headers.setBearerAuth(userRequest.getAccessToken().getTokenValue());
headers.setAccept(Collections.singletonList(MediaType.APPLICATION_JSON));
URI uri = UriComponentsBuilder.fromUriString(organizationUrl).build().toUri();
RequestEntity<?> request = new RequestEntity<>(headers, HttpMethod.GET, uri);
ResponseEntity<Map<String, Object>> res = restTemplate.exchange(request, new ParameterizedTypeReference<Map<String, Object>>() {
});
if (!res.getStatusCode().is2xxSuccessful()) {
return null;
}
return res.getBody();
}
};
return service;
}
Aggregations