`
balaschen
  • 浏览: 190194 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

Http基本明文验证

阅读更多
base64解码使用了novell的实现
java 代码
  1. /**  
  2.  * $Revision: 1.0 $  
  3.  * Created: 2007-6-13  
  4.  * $Date: 2007-6-13 $  
  5.  *   
  6.  * Author: Keven Chen  
  7.  */  
  8. package com.comwave.webui.core.web.filter;   
  9.   
  10. import java.io.IOException;   
  11. import java.util.StringTokenizer;   
  12.   
  13. import javax.servlet.Filter;   
  14. import javax.servlet.FilterChain;   
  15. import javax.servlet.FilterConfig;   
  16. import javax.servlet.ServletException;   
  17. import javax.servlet.ServletRequest;   
  18. import javax.servlet.ServletResponse;   
  19. import javax.servlet.http.HttpServletRequest;   
  20. import javax.servlet.http.HttpServletResponse;   
  21.   
  22. /**  
  23.  * @author Keven Chen  
  24.  * @version $Revision 1.0 $  
  25.  *  
  26.  */  
  27. public class AuthorizationFilter implements Filter {   
  28.   
  29.   
  30.     public void destroy() {   
  31.            
  32.     }   
  33.   
  34.     public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)   
  35.             throws IOException, ServletException {   
  36.         HttpServletRequest hRequest = (HttpServletRequest) request;   
  37.         HttpServletResponse hResponse = (HttpServletResponse) response;   
  38.            
  39.         String authHeader = hRequest.getHeader("Authorization");   
  40.         if(authHeader!=null){   
  41.             StringTokenizer st = new StringTokenizer(authHeader);   
  42.             if (st.hasMoreTokens()) {   
  43.                 String basic = st.nextToken();   
  44.                 if (basic.equalsIgnoreCase("Basic")) {   
  45.                     String credentials = st.nextToken();   
  46.                     String userPass = new String(Base64.decode(credentials));   
  47.                     System.out.println(userPass);   
  48.                 }   
  49.             }   
  50.         }   
  51.         else{   
  52.             hResponse.setHeader("WWW-Authenticate","BASIC realm=\"comwave\"");   
  53.             hResponse.setStatus(HttpServletResponse.SC_UNAUTHORIZED);   
  54.         }   
  55.         //Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==   
  56.     }   
  57.   
  58.   
  59.     public void init(FilterConfig arg0) throws ServletException {   
  60.            
  61.     }   
  62.   
  63. }   
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics