Example usage for org.springframework.security.oauth2.client.resource BaseOAuth2ProtectedResourceDetails BaseOAuth2ProtectedResourceDetails

List of usage examples for org.springframework.security.oauth2.client.resource BaseOAuth2ProtectedResourceDetails BaseOAuth2ProtectedResourceDetails

Introduction

In this page you can find the example usage for org.springframework.security.oauth2.client.resource BaseOAuth2ProtectedResourceDetails BaseOAuth2ProtectedResourceDetails.

Prototype

BaseOAuth2ProtectedResourceDetails

Source Link

Usage

From source file:ltistarter.oauth.OAuthUtils.java

public static ResponseEntity sendOAuth2Request(String url, String clientId, String clientSecret,
        String accessTokenURI, Map<String, String> params) {
    assert url != null;
    assert clientId != null;
    assert clientSecret != null;
    AuthorizationCodeAccessTokenProvider provider = new AuthorizationCodeAccessTokenProvider();
    BaseOAuth2ProtectedResourceDetails resource = new BaseOAuth2ProtectedResourceDetails();
    resource.setClientAuthenticationScheme(AuthenticationScheme.form);
    resource.setClientId(clientId);/*from  ww w . j  a v  a2 s  . c om*/
    resource.setClientSecret(clientSecret);
    resource.setAccessTokenUri(accessTokenURI);
    resource.setGrantType("access");
    OAuth2AccessToken accessToken = provider.obtainAccessToken(resource, new DefaultAccessTokenRequest());
    OAuth2RestTemplate restTemplate = new OAuth2RestTemplate(resource,
            new DefaultOAuth2ClientContext(accessToken));
    ResponseEntity<String> response = restTemplate.postForEntity(url, params, String.class,
            (Map<String, ?>) null);
    return response;
}

From source file:org.zalando.stups.oauth2.spring.client.StupsTokensAccessTokenProviderTest.java

@Test
public void testObtainAccessToken() throws Exception {
    when(mockAccessTokens.getAccessToken(anyString()))
            .thenReturn(new AccessToken("12345", "bearer", 3600, tomorrow()));
    final OAuth2AccessToken accessToken = accessTokenProvider
            .obtainAccessToken(new BaseOAuth2ProtectedResourceDetails(), new DefaultAccessTokenRequest());

    assertThat(accessToken).isNotNull();
    assertThat(accessToken.getValue()).isEqualTo("12345");
    assertThat(accessToken.getTokenType()).isEqualTo("Bearer");
    assertThat(accessToken.isExpired()).isFalse();

    verify(mockAccessTokens).getAccessToken(eq(TOKEN_ID));
}

From source file:org.zalando.stups.oauth2.spring.client.StupsTokensAccessTokenProviderTest.java

@Test
public void testObtainExpiredAccessToken() throws Exception {
    when(mockAccessTokens.getAccessToken(anyString()))
            .thenReturn(new AccessToken("12345", "bearer", 3600, yesterday()));
    final OAuth2AccessToken accessToken = accessTokenProvider
            .obtainAccessToken(new BaseOAuth2ProtectedResourceDetails(), new DefaultAccessTokenRequest());

    assertThat(accessToken).isNotNull();
    assertThat(accessToken.getValue()).isEqualTo("12345");
    assertThat(accessToken.getTokenType()).isEqualTo("Bearer");
    assertThat(accessToken.isExpired()).isTrue();

    verify(mockAccessTokens).getAccessToken(eq(TOKEN_ID));
}

From source file:com.feedeo.rest.client.AbstractOAuth2RestClient.java

@Override
protected RestOperations createRestOperations(ObjectMapper objectMapper,
        ClientHttpRequestFactory clientHttpRequestFactory) {
    RestTemplate restTemplate = (RestTemplate) super.createRestOperations(objectMapper,
            clientHttpRequestFactory);//from  w  w w . j  ava2s . co m

    OAuth2RestTemplate oAuth2RestTemplate = new OAuth2RestTemplate(new BaseOAuth2ProtectedResourceDetails(),
            new DefaultOAuth2ClientContext());
    oAuth2RestTemplate.setRequestFactory(restTemplate.getRequestFactory());
    oAuth2RestTemplate.setMessageConverters(restTemplate.getMessageConverters());
    oAuth2RestTemplate.setInterceptors(restTemplate.getInterceptors());

    return oAuth2RestTemplate;
}

From source file:org.zalando.stups.oauth2.spring.client.StupsTokensAccessTokenProviderTest.java

@Test
public void testObtainAccessTokenException() throws Exception {
    final AccessTokenUnavailableException unavailableAccessToken = new AccessTokenUnavailableException();
    when(mockAccessTokens.getAccessToken(anyObject())).thenThrow(unavailableAccessToken);
    try {//from w  w  w  .ja  v a  2  s  .com
        accessTokenProvider.obtainAccessToken(new BaseOAuth2ProtectedResourceDetails(),
                new DefaultAccessTokenRequest());
        failBecauseExceptionWasNotThrown(OAuth2Exception.class);
    } catch (OAuth2Exception e) {
        assertThat(e).hasCause(unavailableAccessToken);
        verify(mockAccessTokens).getAccessToken(eq(TOKEN_ID));
    }
}

From source file:org.springframework.boot.autoconfigure.security.oauth2.resource.UserInfoTokenServices.java

@SuppressWarnings({ "unchecked" })
private Map<String, Object> getMap(String path, String accessToken) {
    this.logger.info("Getting user info from: " + path);
    try {/*from  w w  w. ja  v a  2  s .  co m*/
        OAuth2RestOperations restTemplate = this.restTemplate;
        if (restTemplate == null) {
            BaseOAuth2ProtectedResourceDetails resource = new BaseOAuth2ProtectedResourceDetails();
            resource.setClientId(this.clientId);
            restTemplate = new OAuth2RestTemplate(resource);
        }
        DefaultOAuth2AccessToken token = new DefaultOAuth2AccessToken(accessToken);
        token.setTokenType(this.tokenType);
        restTemplate.getOAuth2ClientContext().setAccessToken(token);
        return restTemplate.getForEntity(path, Map.class).getBody();
    } catch (Exception ex) {
        this.logger.info("Could not fetch user details: " + ex.getClass() + ", " + ex.getMessage());
        return Collections.<String, Object>singletonMap("error", "Could not fetch user details");
    }
}

From source file:org.springframework.cloud.security.oauth2.resource.UserInfoTokenServices.java

private Map<String, Object> getMap(String path, String accessToken) {
    logger.info("Getting user info from: " + path);
    OAuth2RestOperations restTemplate = this.restTemplate;
    if (restTemplate == null) {
        BaseOAuth2ProtectedResourceDetails resource = new BaseOAuth2ProtectedResourceDetails();
        resource.setClientId(clientId);/*from  w  w  w . j av  a  2  s.com*/
        restTemplate = new OAuth2RestTemplate(resource);
    }
    restTemplate.getOAuth2ClientContext().setAccessToken(new DefaultOAuth2AccessToken(accessToken));
    @SuppressWarnings("rawtypes")
    Map map = restTemplate.getForEntity(path, Map.class).getBody();
    @SuppressWarnings("unchecked")
    Map<String, Object> result = map;
    return result;
}

From source file:org.springframework.cloud.security.oauth2.UserInfoTokenServices.java

private Map<String, Object> getMap(String path, String accessToken) {
    logger.info("Getting user info from: " + path);
    BaseOAuth2ProtectedResourceDetails resource = new BaseOAuth2ProtectedResourceDetails();
    resource.setClientId(clientId);//from   www.  ja v a2s . c o  m
    OAuth2RestTemplate restTemplate = new OAuth2RestTemplate(resource);
    restTemplate.getOAuth2ClientContext().setAccessToken(new DefaultOAuth2AccessToken(accessToken));
    @SuppressWarnings("rawtypes")
    Map map = restTemplate.getForEntity(path, Map.class).getBody();
    @SuppressWarnings("unchecked")
    Map<String, Object> result = map;
    return result;
}

From source file:ua.com.skywell.oauth.custom.UserInfoTokenServices.java

@SuppressWarnings({ "unchecked" })
private Map<String, Object> getMap(String path, String accessToken) {
    this.logger.info("Getting user info from: " + path);
    try {/*w  w w . j  a  v  a  2  s  .  c  o m*/
        OAuth2RestOperations restTemplate = this.restTemplate;
        if (restTemplate == null) {
            BaseOAuth2ProtectedResourceDetails resource = new BaseOAuth2ProtectedResourceDetails();
            resource.setClientId(this.clientId);
            restTemplate = new OAuth2RestTemplate(resource);
        }
        OAuth2AccessToken existingToken = restTemplate.getOAuth2ClientContext().getAccessToken();
        if (existingToken == null || !accessToken.equals(existingToken.getValue())) {
            DefaultOAuth2AccessToken token = new DefaultOAuth2AccessToken(accessToken);
            token.setTokenType(this.tokenType);
            restTemplate.getOAuth2ClientContext().setAccessToken(token);
        }
        return restTemplate.getForEntity(path, Map.class).getBody();
    } catch (Exception ex) {
        this.logger.info("Could not fetch user details: " + ex.getClass() + ", " + ex.getMessage());
        return Collections.<String, Object>singletonMap("error", "Could not fetch user details");
    }
}