Search in sources :

Example 6 with ApiConfig

use of org.ff4j.web.ApiConfig in project ff4j by ff4j.

the class ApiConfigTest method testApiConfig.

@Test
public void testApiConfig() {
    ApiConfig apc1 = new ApiConfig();
    apc1.setVersion("1");
    apc1.getVersion();
    apc1.isAuthenticate();
    apc1.isAutorize();
    apc1.isDocumentation();
    apc1.isLog();
    apc1.setFF4j(new FF4j());
    apc1.getFF4j();
    apc1.setApiKeys(Util.set("1", "2"));
    apc1.getApiKeys();
    apc1.setAuthenticate(false);
    apc1.setAutorize(false);
    apc1.setHost("localhost");
    apc1.getHost();
    apc1.setPort(8080);
    apc1.getPort();
    apc1.setPermissions(new HashMap<String, Set<String>>());
    apc1.getPermissions();
    apc1.setLog(false);
    apc1.setUsers(new HashMap<String, String>());
    apc1.getUsers();
    apc1.getWebContext();
    apc1.getContextPath();
    apc1.createApiKey("key", true, true, Util.set("USER", "ADMIN"));
    apc1.createUser("john", "tiger", true, true, Util.set("USER", "ADMIN"));
    apc1.setFF4j(new FF4j());
    new ApiConfigBuilder(apc1);
}
Also used : ApiConfigBuilder(org.ff4j.web.ApiConfigBuilder) Set(java.util.Set) FF4j(org.ff4j.FF4j) ApiConfig(org.ff4j.web.ApiConfig) Test(org.junit.Test)

Example 7 with ApiConfig

use of org.ff4j.web.ApiConfig in project ff4j by ff4j.

the class ApiConfigTest method tesApiConfigBuilder.

@Test
public void tesApiConfigBuilder() {
    ApiConfigBuilder b = new ApiConfigBuilder();
    b.addApiKey("123").addUser("", "").authenticate(false).documentation(false).host("localhost").port(12).webContext("/ok").withAuthentication().withAutorization().withDocumentation().withoutAuthentication().withoutAutorization().withoutDocumentation();
    ApiConfig conf = b.build();
    Assert.assertNotNull(conf);
    new ApiConfigBuilder(new FF4j());
}
Also used : ApiConfigBuilder(org.ff4j.web.ApiConfigBuilder) FF4j(org.ff4j.FF4j) ApiConfig(org.ff4j.web.ApiConfig) Test(org.junit.Test)

Example 8 with ApiConfig

use of org.ff4j.web.ApiConfig in project ff4j by ff4j.

the class FF4JApplicationTest method testApplicationInitialization.

@Test
public void testApplicationInitialization() {
    new FF4JApiApplication() {

        protected ApiConfig getApiConfig() {
            ApiConfig ac = new ApiConfig();
            ac.setAutorize(true);
            return ac;
        }
    };
    new FF4JApiApplication() {

        protected ApiConfig getApiConfig() {
            ApiConfig ac = new ApiConfig();
            ac.setAuthenticate(true);
            ac.setLog(true);
            return ac;
        }
    };
    Assert.assertNotNull(new FF4JApiApplication() {

        protected ApiConfig getApiConfig() {
            ApiConfig ac = new ApiConfig();
            ac.setAuthenticate(false);
            ac.setLog(false);
            return ac;
        }
    });
}
Also used : ApiConfig(org.ff4j.web.ApiConfig) FF4JApiApplication(org.ff4j.web.api.FF4JApiApplication) Test(org.junit.Test)

Example 9 with ApiConfig

use of org.ff4j.web.ApiConfig in project ff4j by ff4j.

the class SecurityFilterTest method testUnAuthorizedApiKey.

@Test(expected = WebApplicationException.class)
public void testUnAuthorizedApiKey() throws IOException {
    FF4jSecurityContextFilter faf = new FF4jSecurityContextFilter();
    ContainerRequest mockRequest = mock(ContainerRequest.class);
    when(mockRequest.getMethod()).thenReturn("GET");
    when(mockRequest.getPath(true)).thenReturn("someURLl");
    when(mockRequest.getHeaderValue("Authorization")).thenReturn("apiKey=12");
    FF4jSecurityContextFilter.setSecurityConfig(new ApiConfig());
    Assert.assertNotNull(faf);
    faf.filter(mockRequest);
}
Also used : ContainerRequest(com.sun.jersey.spi.container.ContainerRequest) ApiConfig(org.ff4j.web.ApiConfig) FF4jSecurityContextFilter(org.ff4j.web.api.security.FF4jSecurityContextFilter) Test(org.junit.Test)

Example 10 with ApiConfig

use of org.ff4j.web.ApiConfig in project ff4j by ff4j.

the class SecuredJersey2Application method getWebApiConfiguration.

/**
 * {@inheritDoc}
 */
@Override
public ApiConfig getWebApiConfiguration() {
    ApiConfig secured = // 
    new ApiConfigBuilder(ff4j).withAuthentication().withAutorization().build();
    // Create 2 valid apiKeys
    secured.createApiKey("123", true, false, Util.set("ROLE_USER", "ROLE_ADMIN"));
    secured.createApiKey("456", true, true, Util.set("ROLE_USER", "ROLE_ADMIN"));
    secured.createUser("user", "user", true, false, Util.set("ROLE_USER", "ROLE_ADMIN"));
    secured.createUser("admin", "admin", true, true, Util.set("ADMINISTRATOR", "USER"));
    return secured;
}
Also used : ApiConfigBuilder(org.ff4j.web.ApiConfigBuilder) ApiConfig(org.ff4j.web.ApiConfig)

Aggregations

ApiConfig (org.ff4j.web.ApiConfig)10 Test (org.junit.Test)8 ApiConfigBuilder (org.ff4j.web.ApiConfigBuilder)3 ContainerRequest (com.sun.jersey.spi.container.ContainerRequest)2 ContainerRequestContext (javax.ws.rs.container.ContainerRequestContext)2 UriInfo (javax.ws.rs.core.UriInfo)2 FF4j (org.ff4j.FF4j)2 FF4jAuthenticationFilter (org.ff4j.web.api.security.FF4jAuthenticationFilter)2 FF4jSecurityContextFilter (org.ff4j.web.api.security.FF4jSecurityContextFilter)2 Set (java.util.Set)1 FF4JApiApplication (org.ff4j.web.api.FF4JApiApplication)1 FF4jAuthorizationFilter (org.ff4j.web.api.security.FF4jAuthorizationFilter)1