Search in sources :

Example 1 with CoreOAuthProviderSupport

use of org.springframework.security.oauth.provider.filter.CoreOAuthProviderSupport in project spring-security-oauth by spring-projects.

the class CoreOAuthProviderSupportTests method testParseParameters.

/**
	 * tests parsing parameters.
	 */
@Test
public void testParseParameters() throws Exception {
    CoreOAuthProviderSupport support = new CoreOAuthProviderSupport();
    when(request.getHeaders("Authorization")).thenReturn(Collections.enumeration(Arrays.asList("OAuth realm=\"http://sp.example.com/\",\n" + "                oauth_consumer_key=\"0685bd9184jfhq22\",\n" + "                oauth_token=\"ad180jjd733klru7\",\n" + "                oauth_signature_method=\"HMAC-SHA1\",\n" + "                oauth_signature=\"wOJIO9A2W5mFwDgiDvZbTSMK%2FPY%3D\",\n" + "                oauth_timestamp=\"137131200\",\n" + "                oauth_nonce=\"4572616e48616d6d65724c61686176\",\n" + "                oauth_version=\"1.0\"")));
    Map<String, String> params = support.parseParameters(request);
    assertEquals("http://sp.example.com/", params.get("realm"));
    assertEquals("0685bd9184jfhq22", params.get(OAuthConsumerParameter.oauth_consumer_key.toString()));
    assertEquals("ad180jjd733klru7", params.get(OAuthConsumerParameter.oauth_token.toString()));
    assertEquals("HMAC-SHA1", params.get(OAuthConsumerParameter.oauth_signature_method.toString()));
    assertEquals("wOJIO9A2W5mFwDgiDvZbTSMK/PY=", params.get(OAuthConsumerParameter.oauth_signature.toString()));
    assertEquals("137131200", params.get(OAuthConsumerParameter.oauth_timestamp.toString()));
    assertEquals("4572616e48616d6d65724c61686176", params.get(OAuthConsumerParameter.oauth_nonce.toString()));
    assertEquals("1.0", params.get(OAuthConsumerParameter.oauth_version.toString()));
}
Also used : CoreOAuthProviderSupport(org.springframework.security.oauth.provider.filter.CoreOAuthProviderSupport) Test(org.junit.Test)

Example 2 with CoreOAuthProviderSupport

use of org.springframework.security.oauth.provider.filter.CoreOAuthProviderSupport in project spring-security-oauth by spring-projects.

the class GoogleCodeCompatibilityTests method testCalculateSignatureBaseString.

/**
	 * tests compatibility of calculating the signature base string.
	 */
@Test
public void testCalculateSignatureBaseString() throws Exception {
    final String baseUrl = "http://www.springframework.org/schema/security/";
    CoreOAuthProviderSupport support = new CoreOAuthProviderSupport() {

        @Override
        protected String getBaseUrl(HttpServletRequest request) {
            return baseUrl;
        }
    };
    Map<String, String[]> parameterMap = new HashMap<String, String[]>();
    parameterMap.put("a", new String[] { "value-a" });
    parameterMap.put("b", new String[] { "value-b" });
    parameterMap.put("c", new String[] { "value-c" });
    parameterMap.put("param[1]", new String[] { "aaa", "bbb" });
    when(request.getParameterNames()).thenReturn(Collections.enumeration(parameterMap.keySet()));
    for (Map.Entry<String, String[]> param : parameterMap.entrySet()) {
        when(request.getParameterValues(param.getKey())).thenReturn(param.getValue());
    }
    String header = "OAuth realm=\"http://sp.example.com/\"," + "                oauth_consumer_key=\"0685bd9184jfhq22\"," + "                oauth_token=\"ad180jjd733klru7\"," + "                oauth_signature_method=\"HMAC-SHA1\"," + "                oauth_signature=\"wOJIO9A2W5mFwDgiDvZbTSMK%2FPY%3D\"," + "                oauth_timestamp=\"137131200\"," + "                oauth_callback=\"" + OAuthCodec.oauthEncode("http://myhost.com/callback") + "\"," + "                oauth_nonce=\"4572616e48616d6d65724c61686176\"," + "                oauth_version=\"1.0\"";
    when(request.getHeaders("Authorization")).thenReturn(Collections.enumeration(Arrays.asList(header)));
    when(request.getMethod()).thenReturn("GET");
    String ours = support.getSignatureBaseString(request);
    when(request.getHeaders("Authorization")).thenReturn(Collections.enumeration(Arrays.asList(header)));
    when(request.getParameterMap()).thenReturn(parameterMap);
    when(request.getHeaderNames()).thenReturn(null);
    OAuthMessage message = OAuthServlet.getMessage(request, baseUrl);
    String theirs = OAuthSignatureMethod.getBaseString(message);
    assertEquals(theirs, ours);
}
Also used : HttpServletRequest(javax.servlet.http.HttpServletRequest) OAuthMessage(net.oauth.OAuthMessage) HashMap(java.util.HashMap) CoreOAuthProviderSupport(org.springframework.security.oauth.provider.filter.CoreOAuthProviderSupport) HashMap(java.util.HashMap) Map(java.util.Map) Test(org.junit.Test)

Example 3 with CoreOAuthProviderSupport

use of org.springframework.security.oauth.provider.filter.CoreOAuthProviderSupport in project spring-security-oauth by spring-projects.

the class CoreOAuthProviderSupportTests method testGetSignatureBaseString.

/**
	 * tests getting the signature base string.
	 */
@Test
public void testGetSignatureBaseString() throws Exception {
    Map<String, String[]> requestParameters = new HashMap<String, String[]>();
    requestParameters.put("file", new String[] { "vacation.jpg" });
    requestParameters.put("size", new String[] { "original" });
    when(request.getParameterNames()).thenReturn(Collections.enumeration(requestParameters.keySet()));
    for (String key : requestParameters.keySet()) {
        when(request.getParameterValues(key)).thenReturn(requestParameters.get(key));
    }
    when(request.getHeaders("Authorization")).thenReturn(Collections.enumeration(Arrays.asList("OAuth realm=\"http://sp.example.com/\",\n" + "                oauth_consumer_key=\"dpf43f3p2l4k3l03\",\n" + "                oauth_token=\"nnch734d00sl2jdk\",\n" + "                oauth_signature_method=\"HMAC-SHA1\",\n" + "                oauth_signature=\"unimportantforthistest\",\n" + "                oauth_timestamp=\"1191242096\",\n" + "                oauth_nonce=\"kllo9940pd9333jh\",\n" + "                oauth_version=\"1.0\"")));
    when(request.getMethod()).thenReturn("gEt");
    CoreOAuthProviderSupport support = new CoreOAuthProviderSupport();
    support.setBaseUrl("http://photos.example.net");
    when(request.getRequestURI()).thenReturn("photos");
    String baseString = support.getSignatureBaseString(request);
    assertEquals("GET&http%3A%2F%2Fphotos.example.net%2Fphotos&file%3Dvacation.jpg%26oauth_consumer_key%3Ddpf43f3p2l4k3l03%26oauth_nonce%3Dkllo9940pd9333jh%26oauth_signature_method%3DHMAC-SHA1%26oauth_timestamp%3D1191242096%26oauth_token%3Dnnch734d00sl2jdk%26oauth_version%3D1.0%26size%3Doriginal", baseString);
}
Also used : HashMap(java.util.HashMap) CoreOAuthProviderSupport(org.springframework.security.oauth.provider.filter.CoreOAuthProviderSupport) Test(org.junit.Test)

Aggregations

Test (org.junit.Test)3 CoreOAuthProviderSupport (org.springframework.security.oauth.provider.filter.CoreOAuthProviderSupport)3 HashMap (java.util.HashMap)2 Map (java.util.Map)1 HttpServletRequest (javax.servlet.http.HttpServletRequest)1 OAuthMessage (net.oauth.OAuthMessage)1