com.basecmp.core.util
Class SecureXSSHttpServletRequest

java.lang.Object
  extended bycom.basecmp.core.util.SecureXSSHttpServletRequest

public class SecureXSSHttpServletRequest
extends java.lang.Object

Http-Request-Wrapper filters all posted request-variables against malicious XSS-attacks by replacing suspicious characters against unsuspicous HTML-entities.

Replacements:

Implementationsnotes:
For performance and resource-saving reasons and a filtered parametervalue value will be cached withing the lifetime of the instance of this request at first request of its corresponding parametername.
Essentially all getter-methods are overwritten. Created on 08.01.2007

Author:
Wolfgang Schröder

Constructor Summary
SecureXSSHttpServletRequest(HttpServletRequest request)
           
 
Method Summary
 void addParameterValues(java.util.Map pm, java.lang.String key, java.lang.String[] value)
           
 java.lang.Object getAttribute(java.lang.String arg0)
           
 java.util.Enumeration getAttributeNames()
           
 java.lang.String getAuthType()
           
 java.lang.String getCharacterEncoding()
           
 int getContentLength()
           
 java.lang.String getContentType()
           
 java.lang.String getContextPath()
           
 Cookie[] getCookies()
           
 long getDateHeader(java.lang.String arg0)
           
 java.lang.String getHeader(java.lang.String arg0)
           
 java.util.Enumeration getHeaderNames()
           
 java.util.Enumeration getHeaders(java.lang.String arg0)
           
 ServletInputStream getInputStream()
           
 int getIntHeader(java.lang.String arg0)
           
 java.lang.String getLocalAddr()
           
 java.util.Locale getLocale()
           
 java.util.Enumeration getLocales()
           
 java.lang.String getLocalName()
           
 int getLocalPort()
           
 java.lang.String getMethod()
           
 java.lang.String getParameter(java.lang.String parametername)
           
 java.util.Map getParameterMap()
           
 java.util.Map getParameterMap(java.lang.String url)
          Parst die mit der URL übegebenen Get-Parameter und liefert eine Map aller Parameter mit dem Namen der Parameter als Key und den Wert(en) als String-Array.
 java.util.Enumeration getParameterNames()
           
 java.lang.String[] getParameterValues(java.lang.String parametername)
           
 java.lang.String getPathInfo()
           
 java.lang.String getPathTranslated()
           
 java.lang.String getProtocol()
           
 java.lang.String getQueryString()
           
 java.io.BufferedReader getReader()
           
 java.lang.String getRealPath(java.lang.String arg0)
           
 java.lang.String getRemoteAddr()
           
 java.lang.String getRemoteHost()
           
 int getRemotePort()
           
 java.lang.String getRemoteUser()
           
 RequestDispatcher getRequestDispatcher(java.lang.String arg0)
           
 java.lang.String getRequestedSessionId()
           
 java.lang.String getRequestURI()
           
 java.lang.StringBuffer getRequestURL()
           
 java.lang.String getScheme()
           
 java.lang.String getServerName()
           
 int getServerPort()
           
 java.lang.String getServletPath()
           
 HttpSession getSession()
           
 HttpSession getSession(boolean arg0)
           
 java.security.Principal getUserPrincipal()
           
 boolean isRequestedSessionIdFromCookie()
           
 boolean isRequestedSessionIdFromUrl()
           
 boolean isRequestedSessionIdFromURL()
           
 boolean isRequestedSessionIdValid()
           
 boolean isSecure()
           
 boolean isUserInRole(java.lang.String arg0)
           
 void removeAttribute(java.lang.String arg0)
           
 void setAttribute(java.lang.String arg0, java.lang.Object arg1)
           
 void setCharacterEncoding(java.lang.String arg0)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SecureXSSHttpServletRequest

public SecureXSSHttpServletRequest(HttpServletRequest request)
Method Detail

addParameterValues

public void addParameterValues(java.util.Map pm,
                               java.lang.String key,
                               java.lang.String[] value)

getAttribute

public java.lang.Object getAttribute(java.lang.String arg0)

getAttributeNames

public java.util.Enumeration getAttributeNames()

getAuthType

public java.lang.String getAuthType()

getCharacterEncoding

public java.lang.String getCharacterEncoding()

getContentLength

public int getContentLength()

getContentType

public java.lang.String getContentType()

getContextPath

public java.lang.String getContextPath()

getCookies

public Cookie[] getCookies()

getDateHeader

public long getDateHeader(java.lang.String arg0)

getHeader

public java.lang.String getHeader(java.lang.String arg0)

getHeaderNames

public java.util.Enumeration getHeaderNames()

getHeaders

public java.util.Enumeration getHeaders(java.lang.String arg0)

getInputStream

public ServletInputStream getInputStream()
                                  throws java.io.IOException
Throws:
java.io.IOException

getIntHeader

public int getIntHeader(java.lang.String arg0)

getLocalAddr

public java.lang.String getLocalAddr()

getLocale

public java.util.Locale getLocale()

getLocales

public java.util.Enumeration getLocales()

getLocalName

public java.lang.String getLocalName()

getLocalPort

public int getLocalPort()

getMethod

public java.lang.String getMethod()

getParameter

public java.lang.String getParameter(java.lang.String parametername)

getParameterMap

public java.util.Map getParameterMap()

getParameterMap

public java.util.Map getParameterMap(java.lang.String url)
Parst die mit der URL übegebenen Get-Parameter und liefert eine Map aller Parameter mit dem Namen der Parameter als Key und den Wert(en) als String-Array.


getParameterNames

public java.util.Enumeration getParameterNames()

getParameterValues

public java.lang.String[] getParameterValues(java.lang.String parametername)

getPathInfo

public java.lang.String getPathInfo()

getPathTranslated

public java.lang.String getPathTranslated()

getProtocol

public java.lang.String getProtocol()

getQueryString

public java.lang.String getQueryString()

getReader

public java.io.BufferedReader getReader()
                                 throws java.io.IOException
Throws:
java.io.IOException

getRealPath

public java.lang.String getRealPath(java.lang.String arg0)

getRemoteAddr

public java.lang.String getRemoteAddr()

getRemoteHost

public java.lang.String getRemoteHost()

getRemotePort

public int getRemotePort()

getRemoteUser

public java.lang.String getRemoteUser()

getRequestDispatcher

public RequestDispatcher getRequestDispatcher(java.lang.String arg0)

getRequestedSessionId

public java.lang.String getRequestedSessionId()

getRequestURI

public java.lang.String getRequestURI()

getRequestURL

public java.lang.StringBuffer getRequestURL()

getScheme

public java.lang.String getScheme()

getServerName

public java.lang.String getServerName()

getServerPort

public int getServerPort()

getServletPath

public java.lang.String getServletPath()

getSession

public HttpSession getSession()

getSession

public HttpSession getSession(boolean arg0)

getUserPrincipal

public java.security.Principal getUserPrincipal()

isRequestedSessionIdFromCookie

public boolean isRequestedSessionIdFromCookie()

isRequestedSessionIdFromUrl

public boolean isRequestedSessionIdFromUrl()

isRequestedSessionIdFromURL

public boolean isRequestedSessionIdFromURL()

isRequestedSessionIdValid

public boolean isRequestedSessionIdValid()

isSecure

public boolean isSecure()

isUserInRole

public boolean isUserInRole(java.lang.String arg0)

removeAttribute

public void removeAttribute(java.lang.String arg0)

setAttribute

public void setAttribute(java.lang.String arg0,
                         java.lang.Object arg1)

setCharacterEncoding

public void setCharacterEncoding(java.lang.String arg0)
                          throws java.io.UnsupportedEncodingException
Throws:
java.io.UnsupportedEncodingException


Copyright © 2004 by basecmp® - Professional Web Solutions