Example usage for org.springframework.security.web.authentication.www DigestAuthenticationEntryPoint afterPropertiesSet

List of usage examples for org.springframework.security.web.authentication.www DigestAuthenticationEntryPoint afterPropertiesSet

Introduction

In this page you can find the example usage for org.springframework.security.web.authentication.www DigestAuthenticationEntryPoint afterPropertiesSet.

Prototype

public void afterPropertiesSet() throws Exception 

Source Link

Usage

From source file:org.springframework.security.web.authentication.www.DigestAuthenticationEntryPointTests.java

@Test
public void testDetectsMissingKey() throws Exception {
    DigestAuthenticationEntryPoint ep = new DigestAuthenticationEntryPoint();
    ep.setRealmName("realm");

    try {//from  w  w w  . java2 s  . c  o  m
        ep.afterPropertiesSet();
        fail("Should have thrown IllegalArgumentException");
    } catch (IllegalArgumentException expected) {
        assertThat(expected.getMessage()).isEqualTo("key must be specified");
    }
}

From source file:org.springframework.security.web.authentication.www.DigestAuthenticationEntryPointTests.java

@Test
public void testDetectsMissingRealmName() throws Exception {
    DigestAuthenticationEntryPoint ep = new DigestAuthenticationEntryPoint();
    ep.setKey("dcdc");
    ep.setNonceValiditySeconds(12);// ww  w  . j  ava 2  s. com

    try {
        ep.afterPropertiesSet();
        fail("Should have thrown IllegalArgumentException");
    } catch (IllegalArgumentException expected) {
        assertThat(expected.getMessage()).isEqualTo("realmName must be specified");
    }
}

From source file:org.springframework.security.web.authentication.www.DigestAuthenticationEntryPointTests.java

@Test
public void testNormalOperation() throws Exception {
    DigestAuthenticationEntryPoint ep = new DigestAuthenticationEntryPoint();
    ep.setRealmName("hello");
    ep.setKey("key");

    MockHttpServletRequest request = new MockHttpServletRequest();
    request.setRequestURI("/some_path");

    MockHttpServletResponse response = new MockHttpServletResponse();

    ep.afterPropertiesSet();

    ep.commence(request, response, new DisabledException("foobar"));

    // Check response is properly formed
    assertThat(response.getStatus()).isEqualTo(401);
    assertThat(response.getHeader("WWW-Authenticate").toString()).startsWith("Digest ");

    // Break up response header
    String header = response.getHeader("WWW-Authenticate").toString().substring(7);
    String[] headerEntries = StringUtils.commaDelimitedListToStringArray(header);
    Map<String, String> headerMap = DigestAuthUtils.splitEachArrayElementAndCreateMap(headerEntries, "=", "\"");

    assertThat(headerMap.get("realm")).isEqualTo("hello");
    assertThat(headerMap.get("qop")).isEqualTo("auth");
    assertThat(headerMap.get("stale")).isNull();

    checkNonceValid(headerMap.get("nonce"));
}

From source file:org.springframework.security.web.authentication.www.DigestAuthenticationEntryPointTests.java

@Test
public void testOperationIfDueToStaleNonce() throws Exception {
    DigestAuthenticationEntryPoint ep = new DigestAuthenticationEntryPoint();
    ep.setRealmName("hello");
    ep.setKey("key");

    MockHttpServletRequest request = new MockHttpServletRequest();
    request.setRequestURI("/some_path");

    MockHttpServletResponse response = new MockHttpServletResponse();

    ep.afterPropertiesSet();

    ep.commence(request, response, new NonceExpiredException("expired nonce"));

    // Check response is properly formed
    assertThat(response.getStatus()).isEqualTo(401);
    assertThat(response.getHeader("WWW-Authenticate").toString()).startsWith("Digest ");

    // Break up response header
    String header = response.getHeader("WWW-Authenticate").toString().substring(7);
    String[] headerEntries = StringUtils.commaDelimitedListToStringArray(header);
    Map<String, String> headerMap = DigestAuthUtils.splitEachArrayElementAndCreateMap(headerEntries, "=", "\"");

    assertThat(headerMap.get("realm")).isEqualTo("hello");
    assertThat(headerMap.get("qop")).isEqualTo("auth");
    assertThat(headerMap.get("stale")).isEqualTo("true");

    checkNonceValid(headerMap.get("nonce"));
}