1 package org.apache.maven.wagon.tck.http.fixture;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import java.io.IOException;
23
24 import javax.servlet.Filter;
25 import javax.servlet.FilterChain;
26 import javax.servlet.FilterConfig;
27 import javax.servlet.ServletException;
28 import javax.servlet.ServletRequest;
29 import javax.servlet.ServletResponse;
30 import javax.servlet.http.HttpServletRequest;
31
32 import org.apache.commons.codec.binary.Base64;
33 import org.apache.log4j.Logger;
34
35 public class AuthSnoopFilter
36 implements Filter
37 {
38 private static Logger logger = Logger.getLogger( AuthSnoopFilter.class );
39
40 public void destroy()
41 {
42 }
43
44 public void doFilter( final ServletRequest req, final ServletResponse response, final FilterChain chain )
45 throws IOException, ServletException
46 {
47 HttpServletRequest request = (HttpServletRequest) req;
48 String authHeader = request.getHeader( "Authorization" );
49
50 if ( authHeader != null )
51 {
52 logger.info( "Authorization: " + authHeader );
53 String data = authHeader.substring( "BASIC ".length() );
54 String decoded = new String( Base64.decodeBase64( data ) );
55 logger.info( decoded );
56 String[] creds = decoded.split( ":" );
57
58 logger.info( "User: " + creds[0] + "\nPassword: " + creds[1] );
59 }
60 }
61
62 public void init( final FilterConfig filterConfig )
63 throws ServletException
64 {
65 }
66
67 }