Class PublicSuffixDomainFilter
java.lang.Object
org.apache.hc.client5.http.impl.cookie.PublicSuffixDomainFilter
- All Implemented Interfaces:
CommonCookieAttributeHandler, CookieAttributeHandler
@Contract(threading=STATELESS)
public class PublicSuffixDomainFilter
extends Object
implements CommonCookieAttributeHandler
Wraps a
CookieAttributeHandler and 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:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final CommonCookieAttributeHandlerprivate final PublicSuffixMatcher -
Constructor Summary
ConstructorsConstructorDescriptionPublicSuffixDomainFilter(CommonCookieAttributeHandler handler, PublicSuffixList suffixList) PublicSuffixDomainFilter(CommonCookieAttributeHandler handler, PublicSuffixMatcher publicSuffixMatcher) -
Method Summary
Modifier and TypeMethodDescriptionstatic CommonCookieAttributeHandlerdecorate(CommonCookieAttributeHandler handler, PublicSuffixMatcher publicSuffixMatcher) booleanmatch(Cookie cookie, CookieOrigin origin) Never matches if the cookie's domain is from the blacklist.voidParse the given cookie attribute value and processChallenge the correspondingCookieproperty.voidvalidate(Cookie cookie, CookieOrigin origin) Performs cookie validation for the given attribute value.
-
Field Details
-
handler
-
publicSuffixMatcher
-
localDomainMap
-
-
Constructor Details
-
PublicSuffixDomainFilter
public PublicSuffixDomainFilter(CommonCookieAttributeHandler handler, PublicSuffixMatcher publicSuffixMatcher) -
PublicSuffixDomainFilter
-
-
Method Details
-
createLocalDomainMap
-
match
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
Description copied from interface:CookieAttributeHandlerParse the given cookie attribute value and processChallenge the correspondingCookieproperty.- Specified by:
parsein interfaceCookieAttributeHandler- Parameters:
cookie-Cookieto be updatedvalue- cookie attribute value from the cookie response header- Throws:
MalformedCookieException- if cookie parsing fails for this attribute
-
validate
Description copied from interface:CookieAttributeHandlerPerforms 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
- Specified by:
getAttributeNamein interfaceCommonCookieAttributeHandler
-
decorate
public static CommonCookieAttributeHandler decorate(CommonCookieAttributeHandler handler, PublicSuffixMatcher publicSuffixMatcher)
-