Search in sources :

Example 16 with RequestData

use of org.simbasecurity.api.service.thrift.RequestData in project simba-os by cegeka.

the class SimbaCredentialsTest method asRequestData_IfEmptySSOTokenOnCredentials_ReturnsRequestDataWithSSOTokenNull.

@Test
public void asRequestData_IfEmptySSOTokenOnCredentials_ReturnsRequestDataWithSSOTokenNull() throws Exception {
    Map<String, String> requestHeaders = Maps.newHashMap();
    requestHeaders.put(HttpHeaders.WWW_AUTHENTICATE, "auth-string");
    Map<String, String> requestParameters = Maps.newHashMap();
    requestParameters.put("format", "timeseries");
    SimbaCredentials simbaCredentials = new SimbaCredentialsBuilderForTests().withRequestUrl(SimbaCredentialsBuilderForTests.REQUESTURL + "?format=timeseries").withRequestHeaders(requestHeaders).withRequestParameters(requestParameters).withSsotoken("").build();
    RequestData expected = new RequestDataBuilderForTests().withHostServerName(HOSTSERVERNAME).withRequestMethod(HTTP_METHOD).withRequestUrl(REQUESTURL + "?format=timeseries").withSimbaWebURL(SIMBAWEBURL).withRequestHeaders(requestHeaders).withRequestParameters(requestParameters).withSsoToken(null).build();
    RequestData actual = simbaCredentials.asRequestData();
    assertThat(actual).isEqualTo(expected);
}
Also used : RequestDataBuilderForTests(org.simbasecurity.dwclient.test.stub.simba.RequestDataBuilderForTests) SimbaCredentialsBuilderForTests(org.simbasecurity.dwclient.dropwizard.credentials.SimbaCredentialsBuilderForTests) RequestData(org.simbasecurity.api.service.thrift.RequestData) Test(org.junit.Test)

Example 17 with RequestData

use of org.simbasecurity.api.service.thrift.RequestData in project simba-os by cegeka.

the class AuthenticationFilterServiceImplTest method testProcessRequest.

@Test
public void testProcessRequest() throws Exception {
    Session sessionMock = mock(Session.class);
    when(sessionServiceMock.getSession(any(SSOToken.class))).thenReturn(sessionMock);
    ChainImpl authenticationChainMock = implantMockLocatingByNameOnly(ChainImpl.class, "authenticationChain");
    serviceImpl.processRequest(new RequestData(null, null, null, null, null, null, false, false, false, false, false, null, null, "loginToken", null), "authenticationChain");
    verify(authenticationChainMock).execute(any(ChainContext.class));
}
Also used : SSOToken(org.simbasecurity.api.service.thrift.SSOToken) ChainContext(org.simbasecurity.core.chain.ChainContext) RequestData(org.simbasecurity.api.service.thrift.RequestData) ChainImpl(org.simbasecurity.core.chain.ChainImpl) Session(org.simbasecurity.core.domain.Session) Test(org.junit.Test)

Example 18 with RequestData

use of org.simbasecurity.api.service.thrift.RequestData in project simba-os by cegeka.

the class AuthenticationFilterServiceImplTest method testGetCurrentSession_NoTokenMappingProvided.

@Test
public void testGetCurrentSession_NoTokenMappingProvided() {
    SSOToken ssoToken = mock(SSOToken.class);
    RequestData requestData = new RequestData(null, null, null, null, ssoToken, null, false, false, false, false, false, null, null, null, null);
    serviceImpl.getCurrentSession(requestData);
    verify(sessionServiceMock).getSession(same(ssoToken));
}
Also used : SSOToken(org.simbasecurity.api.service.thrift.SSOToken) RequestData(org.simbasecurity.api.service.thrift.RequestData) Test(org.junit.Test)

Example 19 with RequestData

use of org.simbasecurity.api.service.thrift.RequestData in project simba-os by cegeka.

the class ChangePasswordController method handleRequest.

public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws Exception {
    RequestData requestData = RequestUtil.createRequestData(request, resolveSimbaWebURL(request));
    ChainContextImpl context = new ChainContextImpl(requestData, sessionService.getSession(requestData.getSsoToken()), configurationService, loginMappingService);
    credentialChain.execute(context);
    ActionDescriptor actionDescriptor = context.getActionDescriptor();
    RequestActionFactory actionFactory = new RequestActionFactory(request, response);
    actionFactory.execute(actionDescriptor);
    return null;
}
Also used : ChainContextImpl(org.simbasecurity.core.chain.ChainContextImpl) RequestData(org.simbasecurity.api.service.thrift.RequestData) ActionDescriptor(org.simbasecurity.api.service.thrift.ActionDescriptor) RequestActionFactory(org.simbasecurity.common.filter.action.RequestActionFactory)

Example 20 with RequestData

use of org.simbasecurity.api.service.thrift.RequestData in project simba-os by cegeka.

the class ManagerSecurityInterceptor method preHandle.

public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
    RequestData requestData = RequestUtil.createRequestData(request, SystemConfiguration.getSimbaWebURL());
    try {
        ActionDescriptor actionDescriptor = authenticationService.processRequest(requestData, SystemConfiguration.getManagerAuthorizationChainName());
        if (actionDescriptor.getActionTypes().contains(ActionType.DO_FILTER_AND_SET_PRINCIPAL)) {
            return true;
        }
    } catch (Exception ignored) {
    }
    response.sendError(HttpServletResponse.SC_UNAUTHORIZED);
    return false;
}
Also used : RequestData(org.simbasecurity.api.service.thrift.RequestData) ActionDescriptor(org.simbasecurity.api.service.thrift.ActionDescriptor)

Aggregations

RequestData (org.simbasecurity.api.service.thrift.RequestData)22 Test (org.junit.Test)15 ActionDescriptor (org.simbasecurity.api.service.thrift.ActionDescriptor)14 THttpClient (org.apache.thrift.transport.THttpClient)12 Client (org.simbasecurity.api.service.thrift.AuthenticationFilterService.Client)9 SimbaCredentials (org.simbasecurity.dwclient.dropwizard.credentials.SimbaCredentials)9 SSOToken (org.simbasecurity.api.service.thrift.SSOToken)8 ActionDescriptorBuilderForTests (org.simbasecurity.dwclient.test.stub.simba.ActionDescriptorBuilderForTests)7 ContainerRequest (com.sun.jersey.spi.container.ContainerRequest)5 AuthenticationFilterService (org.simbasecurity.api.service.thrift.AuthenticationFilterService)4 TJSONProtocol (org.apache.thrift.protocol.TJSONProtocol)3 TProtocol (org.apache.thrift.protocol.TProtocol)3 SimbaCredentialsBuilderForTests (org.simbasecurity.dwclient.dropwizard.credentials.SimbaCredentialsBuilderForTests)3 RequestDataBuilderForTests (org.simbasecurity.dwclient.test.stub.simba.RequestDataBuilderForTests)3 IOException (java.io.IOException)2 RequestActionFactory (org.simbasecurity.common.filter.action.RequestActionFactory)2 SimbaPrincipal (org.simbasecurity.dwclient.dropwizard.credentials.SimbaPrincipal)2 UserPrincipal (com.sun.security.auth.UserPrincipal)1 Principal (java.security.Principal)1 ServletContext (javax.servlet.ServletContext)1