mirror of
https://github.com/scm-manager/scm-manager.git
synced 2025-11-11 16:05:44 +01:00
Rename classes
This commit is contained in:
@@ -301,7 +301,7 @@ public class AuthenticationFilter extends HttpFilter
|
||||
}
|
||||
}
|
||||
|
||||
chain.doFilter(new SecurityHttpServletRequestWrapper(request, username),
|
||||
chain.doFilter(new PropagatePrincipleServletRequestWrapper(request, username),
|
||||
response);
|
||||
}
|
||||
|
||||
|
||||
@@ -38,37 +38,17 @@ package sonia.scm.web.filter;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletRequestWrapper;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author Sebastian Sdorra
|
||||
*/
|
||||
public class SecurityHttpServletRequestWrapper extends HttpServletRequestWrapper
|
||||
{
|
||||
public class PropagatePrincipleServletRequestWrapper extends HttpServletRequestWrapper {
|
||||
|
||||
/**
|
||||
* Constructs ...
|
||||
*
|
||||
*
|
||||
* @param request
|
||||
* @param principal
|
||||
*/
|
||||
public SecurityHttpServletRequestWrapper(HttpServletRequest request,
|
||||
String principal)
|
||||
{
|
||||
private final String principal;
|
||||
|
||||
public PropagatePrincipleServletRequestWrapper(HttpServletRequest request, String principal) {
|
||||
super(request);
|
||||
this.principal = principal;
|
||||
}
|
||||
|
||||
//~--- get methods ----------------------------------------------------------
|
||||
|
||||
@Override
|
||||
public String getRemoteUser()
|
||||
{
|
||||
public String getRemoteUser() {
|
||||
return principal;
|
||||
}
|
||||
|
||||
//~--- fields ---------------------------------------------------------------
|
||||
|
||||
/** Field description */
|
||||
private final String principal;
|
||||
}
|
||||
@@ -42,9 +42,8 @@ import org.apache.shiro.subject.Subject;
|
||||
import sonia.scm.Priority;
|
||||
import sonia.scm.SCMContext;
|
||||
import sonia.scm.config.ScmConfiguration;
|
||||
import sonia.scm.security.SecurityRequests;
|
||||
import sonia.scm.web.filter.HttpFilter;
|
||||
import sonia.scm.web.filter.SecurityHttpServletRequestWrapper;
|
||||
import sonia.scm.web.filter.PropagatePrincipleServletRequestWrapper;
|
||||
|
||||
import javax.servlet.FilterChain;
|
||||
import javax.servlet.ServletException;
|
||||
@@ -61,9 +60,8 @@ import static sonia.scm.api.v2.resources.ScmPathInfo.REST_API_PATH;
|
||||
* @author Sebastian Sdorra
|
||||
*/
|
||||
@Priority(Filters.PRIORITY_AUTHORIZATION)
|
||||
// TODO find a better way for unprotected resources
|
||||
@WebElement(value = REST_API_PATH + "/(?!v2/ui).*", regex = true)
|
||||
public class SecurityFilter extends HttpFilter
|
||||
public class PropagatePrincipleFilter extends HttpFilter
|
||||
{
|
||||
|
||||
/** name of request attribute for the primary principal */
|
||||
@@ -73,7 +71,7 @@ public class SecurityFilter extends HttpFilter
|
||||
private final ScmConfiguration configuration;
|
||||
|
||||
@Inject
|
||||
public SecurityFilter(ScmConfiguration configuration)
|
||||
public PropagatePrincipleFilter(ScmConfiguration configuration)
|
||||
{
|
||||
this.configuration = configuration;
|
||||
}
|
||||
@@ -92,7 +90,7 @@ public class SecurityFilter extends HttpFilter
|
||||
request.setAttribute(ATTRIBUTE_REMOTE_USER, username);
|
||||
|
||||
// wrap servlet request to provide authentication information
|
||||
chain.doFilter(new SecurityHttpServletRequestWrapper(request, username), response);
|
||||
chain.doFilter(new PropagatePrincipleServletRequestWrapper(request, username), response);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -58,13 +58,13 @@ import static org.junit.Assert.assertEquals;
|
||||
import static org.mockito.Mockito.verify;
|
||||
|
||||
/**
|
||||
* Unit tests for {@link SecurityFilter}.
|
||||
* Unit tests for {@link PropagatePrincipleFilter}.
|
||||
*
|
||||
* @author Sebastian Sdorra
|
||||
*/
|
||||
@RunWith(MockitoJUnitRunner.class)
|
||||
@SubjectAware(configuration = "classpath:sonia/scm/shiro-001.ini")
|
||||
public class SecurityFilterTest {
|
||||
public class PropagatePrincipleFilterTest {
|
||||
|
||||
@Mock
|
||||
private HttpServletRequest request;
|
||||
@@ -83,7 +83,7 @@ public class SecurityFilterTest {
|
||||
|
||||
private ScmConfiguration configuration;
|
||||
|
||||
private SecurityFilter securityFilter;
|
||||
private PropagatePrincipleFilter propagatePrincipleFilter;
|
||||
|
||||
@Rule
|
||||
public ShiroRule shiro = new ShiroRule();
|
||||
@@ -94,7 +94,7 @@ public class SecurityFilterTest {
|
||||
@Before
|
||||
public void setUp(){
|
||||
this.configuration = new ScmConfiguration();
|
||||
this.securityFilter = new SecurityFilter(configuration);
|
||||
this.propagatePrincipleFilter = new PropagatePrincipleFilter(configuration);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -105,7 +105,7 @@ public class SecurityFilterTest {
|
||||
*/
|
||||
@Test
|
||||
public void testAnonymous() throws IOException, ServletException {
|
||||
securityFilter.doFilter(request, response, chain);
|
||||
propagatePrincipleFilter.doFilter(request, response, chain);
|
||||
response.sendError(HttpServletResponse.SC_FORBIDDEN);
|
||||
}
|
||||
|
||||
@@ -120,10 +120,10 @@ public class SecurityFilterTest {
|
||||
configuration.setAnonymousAccessEnabled(true);
|
||||
|
||||
// execute
|
||||
securityFilter.doFilter(request, response, chain);
|
||||
propagatePrincipleFilter.doFilter(request, response, chain);
|
||||
|
||||
// verify and capture
|
||||
verify(request).setAttribute(SecurityFilter.ATTRIBUTE_REMOTE_USER, SCMContext.USER_ANONYMOUS);
|
||||
verify(request).setAttribute(PropagatePrincipleFilter.ATTRIBUTE_REMOTE_USER, SCMContext.USER_ANONYMOUS);
|
||||
verify(chain).doFilter(requestCaptor.capture(), responseCaptor.capture());
|
||||
|
||||
// assert
|
||||
@@ -142,10 +142,10 @@ public class SecurityFilterTest {
|
||||
authenticateUser(UserTestData.createTrillian());
|
||||
|
||||
// execute
|
||||
securityFilter.doFilter(request, response, chain);
|
||||
propagatePrincipleFilter.doFilter(request, response, chain);
|
||||
|
||||
// verify and capture
|
||||
verify(request).setAttribute(SecurityFilter.ATTRIBUTE_REMOTE_USER, "trillian");
|
||||
verify(request).setAttribute(PropagatePrincipleFilter.ATTRIBUTE_REMOTE_USER, "trillian");
|
||||
verify(chain).doFilter(requestCaptor.capture(), responseCaptor.capture());
|
||||
|
||||
// assert
|
||||
Reference in New Issue
Block a user