Package org.apache.http.impl.cookie
Class PublicSuffixDomainFilter
- java.lang.Object
-
- org.apache.http.impl.cookie.PublicSuffixDomainFilter
-
- All Implemented Interfaces:
CommonCookieAttributeHandler,CookieAttributeHandler
@Contract(threading=IMMUTABLE_CONDITIONAL) public class PublicSuffixDomainFilter extends Object implements CommonCookieAttributeHandler
Wraps aCookieAttributeHandlerand leverages its match method to never match a suffix from a black list. May be used to provide additional security for cross-site attack types by preventing cookies from apparent domains that are not publicly available.- Since:
- 4.4
- See Also:
PublicSuffixList,PublicSuffixMatcher
-
-
Constructor Summary
Constructors Constructor Description PublicSuffixDomainFilter(CommonCookieAttributeHandler handler, PublicSuffixList suffixList)PublicSuffixDomainFilter(CommonCookieAttributeHandler handler, PublicSuffixMatcher publicSuffixMatcher)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static CommonCookieAttributeHandlerdecorate(CommonCookieAttributeHandler handler, PublicSuffixMatcher publicSuffixMatcher)StringgetAttributeName()booleanmatch(Cookie cookie, CookieOrigin origin)Never matches if the cookie's domain is from the blacklist.voidparse(SetCookie cookie, String value)Parse the given cookie attribute value and update the correspondingCookieproperty.voidvalidate(Cookie cookie, CookieOrigin origin)Peforms cookie validation for the given attribute value.
-
-
-
Constructor Detail
-
PublicSuffixDomainFilter
public PublicSuffixDomainFilter(CommonCookieAttributeHandler handler, PublicSuffixMatcher publicSuffixMatcher)
-
PublicSuffixDomainFilter
public PublicSuffixDomainFilter(CommonCookieAttributeHandler handler, PublicSuffixList suffixList)
-
-
Method Detail
-
match
public boolean match(Cookie cookie, CookieOrigin origin)
Never matches if the cookie's domain is from the blacklist.- Specified by:
matchin interfaceCookieAttributeHandler- Parameters:
cookie-Cookieto matchorigin- the cookie source to match against- Returns:
trueif the match is successful;falseotherwise
-
parse
public void parse(SetCookie cookie, String value) throws MalformedCookieException
Description copied from interface:CookieAttributeHandlerParse the given cookie attribute value and update the correspondingCookieproperty.- Specified by:
parsein interfaceCookieAttributeHandler- Parameters:
cookie-Cookieto be updatedvalue- cookie attribute value from the cookie response header- Throws:
MalformedCookieException
-
validate
public void validate(Cookie cookie, CookieOrigin origin) throws MalformedCookieException
Description copied from interface:CookieAttributeHandlerPeforms cookie validation for the given attribute value.- Specified by:
validatein interfaceCookieAttributeHandler- Parameters:
cookie-Cookieto validateorigin- the cookie source to validate against- Throws:
MalformedCookieException- if cookie validation fails for this attribute
-
getAttributeName
public String getAttributeName()
- Specified by:
getAttributeNamein interfaceCommonCookieAttributeHandler
-
decorate
public static CommonCookieAttributeHandler decorate(CommonCookieAttributeHandler handler, PublicSuffixMatcher publicSuffixMatcher)
-
-