Search in sources :

Example 6 with WebScriptServletResponse

use of org.springframework.extensions.webscripts.servlet.WebScriptServletResponse in project alfresco-remote-api by Alfresco.

the class BlockingRemoteUserMapper method authenticate.

private boolean authenticate(Set<String> families, String headerToAdd) {
    WebScriptServletRequest mockRequest = prepareMockRequest(families, headerToAdd);
    WebScriptServletResponse mockResponse = prepareMockResponse();
    Authenticator authenticator = remoteUserAuthenticatorFactory.create(mockRequest, mockResponse);
    return authenticator.authenticate(RequiredAuthentication.admin, false);
}
Also used : WebScriptServletResponse(org.springframework.extensions.webscripts.servlet.WebScriptServletResponse) WebScriptServletRequest(org.springframework.extensions.webscripts.servlet.WebScriptServletRequest) Authenticator(org.springframework.extensions.webscripts.Authenticator)

Example 7 with WebScriptServletResponse

use of org.springframework.extensions.webscripts.servlet.WebScriptServletResponse in project alfresco-remote-api by Alfresco.

the class RemoteAuthenticatorFactoryTest method testDisabledUser.

@Test
public void testDisabledUser() throws Exception {
    final String username = transactionService.getRetryingTransactionHelper().doInTransaction(new RetryingTransactionCallback<String>() {

        @Override
        public String execute() throws Throwable {
            return AuthenticationUtil.runAs(new RunAsWork<String>() {

                @Override
                public String doWork() throws Exception {
                    return createPerson(false);
                }
            }, AuthenticationUtil.SYSTEM_USER_NAME);
        }
    }, false, true);
    transactionService.getRetryingTransactionHelper().doInTransaction(new RetryingTransactionCallback<Void>() {

        @Override
        public Void execute() throws Throwable {
            return AuthenticationUtil.runAs(new RunAsWork<Void>() {

                @Override
                public Void doWork() throws Exception {
                    // Mock a request with a username in the header
                    HttpServletRequest mockHttpRequest = mock(HttpServletRequest.class);
                    when(mockHttpRequest.getHeader("X-Alfresco-Remote-User")).thenReturn(username);
                    when(mockHttpRequest.getScheme()).thenReturn("http");
                    WebScriptServletRequest mockRequest = mock(WebScriptServletRequest.class);
                    when(mockRequest.getHttpServletRequest()).thenReturn(mockHttpRequest);
                    HttpServletResponse mockHttpResponse = mock(HttpServletResponse.class);
                    WebScriptServletResponse mockResponse = mock(WebScriptServletResponse.class);
                    when(mockResponse.getHttpServletResponse()).thenReturn(mockHttpResponse);
                    Authenticator authenticator = remoteUserAuthenticatorFactory.create(mockRequest, mockResponse);
                    assertFalse(authenticator.authenticate(RequiredAuthentication.user, false));
                    return null;
                }
            }, AuthenticationUtil.SYSTEM_USER_NAME);
        }
    }, false, true);
}
Also used : HttpServletRequest(javax.servlet.http.HttpServletRequest) RunAsWork(org.alfresco.repo.security.authentication.AuthenticationUtil.RunAsWork) HttpServletResponse(javax.servlet.http.HttpServletResponse) WebScriptServletResponse(org.springframework.extensions.webscripts.servlet.WebScriptServletResponse) WebScriptServletRequest(org.springframework.extensions.webscripts.servlet.WebScriptServletRequest) Authenticator(org.springframework.extensions.webscripts.Authenticator) Test(org.junit.Test)

Example 8 with WebScriptServletResponse

use of org.springframework.extensions.webscripts.servlet.WebScriptServletResponse in project alfresco-remote-api by Alfresco.

the class RemoteAuthenticatorFactoryTest method testEnabledUser.

@Test
public void testEnabledUser() throws Exception {
    final String username = transactionService.getRetryingTransactionHelper().doInTransaction(new RetryingTransactionCallback<String>() {

        @Override
        public String execute() throws Throwable {
            return AuthenticationUtil.runAs(new RunAsWork<String>() {

                @Override
                public String doWork() throws Exception {
                    return createPerson(true);
                }
            }, AuthenticationUtil.SYSTEM_USER_NAME);
        }
    }, false, true);
    // Mock a request with a username in the header
    HttpServletRequest mockHttpRequest = mock(HttpServletRequest.class);
    when(mockHttpRequest.getHeader("X-Alfresco-Remote-User")).thenReturn(username);
    when(mockHttpRequest.getScheme()).thenReturn("http");
    WebScriptServletRequest mockRequest = mock(WebScriptServletRequest.class);
    when(mockRequest.getHttpServletRequest()).thenReturn(mockHttpRequest);
    HttpServletResponse mockHttpResponse = mock(HttpServletResponse.class);
    WebScriptServletResponse mockResponse = mock(WebScriptServletResponse.class);
    when(mockResponse.getHttpServletResponse()).thenReturn(mockHttpResponse);
    Authenticator authenticator = remoteUserAuthenticatorFactory.create(mockRequest, mockResponse);
    assertTrue(authenticator.authenticate(RequiredAuthentication.user, false));
}
Also used : HttpServletRequest(javax.servlet.http.HttpServletRequest) RunAsWork(org.alfresco.repo.security.authentication.AuthenticationUtil.RunAsWork) HttpServletResponse(javax.servlet.http.HttpServletResponse) WebScriptServletResponse(org.springframework.extensions.webscripts.servlet.WebScriptServletResponse) WebScriptServletRequest(org.springframework.extensions.webscripts.servlet.WebScriptServletRequest) Authenticator(org.springframework.extensions.webscripts.Authenticator) Test(org.junit.Test)

Aggregations

WebScriptServletResponse (org.springframework.extensions.webscripts.servlet.WebScriptServletResponse)8 Authenticator (org.springframework.extensions.webscripts.Authenticator)6 WebScriptServletRequest (org.springframework.extensions.webscripts.servlet.WebScriptServletRequest)6 HttpServletRequest (javax.servlet.http.HttpServletRequest)4 HttpServletResponse (javax.servlet.http.HttpServletResponse)4 Test (org.junit.Test)3 RunAsWork (org.alfresco.repo.security.authentication.AuthenticationUtil.RunAsWork)2 DefaultRemoteUserMapper (org.alfresco.repo.security.authentication.external.DefaultRemoteUserMapper)1 Mockito.doAnswer (org.mockito.Mockito.doAnswer)1 InvocationOnMock (org.mockito.invocation.InvocationOnMock)1 Answer (org.mockito.stubbing.Answer)1 Description (org.springframework.extensions.webscripts.Description)1 Match (org.springframework.extensions.webscripts.Match)1 WebScript (org.springframework.extensions.webscripts.WebScript)1