java.lang.Object
org.eclipse.jetty.util.component.AbstractLifeCycle
org.eclipse.jetty.server.AllowedResourceAliasChecker
- All Implemented Interfaces:
AliasCheck,org.eclipse.jetty.util.component.LifeCycle
- Direct Known Subclasses:
SymlinkAllowedResourceAliasChecker
public class AllowedResourceAliasChecker
extends org.eclipse.jetty.util.component.AbstractLifeCycle
implements AliasCheck
This will approve any alias to anything inside of the ContextHandlers resource base which
is not protected by a protected target as defined by the ContextHandler protected targets at start.
Aliases approved by this may still be able to bypass SecurityConstraints, so this class would need to be extended to enforce any additional security constraints that are required.
-
Nested Class Summary
Nested classes/interfaces inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle
org.eclipse.jetty.util.component.AbstractLifeCycle.AbstractLifeCycleListener, org.eclipse.jetty.util.component.AbstractLifeCycle.StopExceptionNested classes/interfaces inherited from interface org.eclipse.jetty.util.component.LifeCycle
org.eclipse.jetty.util.component.LifeCycle.Listener -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected PathDeprecated.protected org.eclipse.jetty.util.resource.Resourceprotected static final LinkOption[]protected static final LinkOption[]Fields inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle
FAILED, STARTED, STARTING, STOPPED, STOPPING -
Constructor Summary
ConstructorsConstructorDescriptionAllowedResourceAliasChecker(ContextHandler contextHandler) AllowedResourceAliasChecker(ContextHandler contextHandler, Supplier<org.eclipse.jetty.util.resource.Resource> resourceBaseSupplier) AllowedResourceAliasChecker(ContextHandler contextHandler, org.eclipse.jetty.util.resource.Resource baseResource) -
Method Summary
Modifier and TypeMethodDescriptionprotected booleanprotected booleanbooleancheckAlias(String pathInContext, org.eclipse.jetty.util.resource.Resource resource) Check if an alias is allowed to be served.protected voiddoStart()protected voiddoStop()org.eclipse.jetty.util.resource.Resourceprotected ContextHandlerprotected PathgetPath(org.eclipse.jetty.util.resource.Resource resource) Deprecated.protected voidprotected booleanprotected booleanisSameFile(Path path1, Path path2) Deprecated.toString()Methods inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle
addEventListener, getEventListeners, getState, getState, isFailed, isRunning, isStarted, isStarting, isStopped, isStopping, removeEventListener, setEventListeners, start, stop
-
Field Details
-
FOLLOW_LINKS
-
NO_FOLLOW_LINKS
-
_baseResource
protected org.eclipse.jetty.util.resource.Resource _baseResource -
_base
Deprecated.
-
-
Constructor Details
-
AllowedResourceAliasChecker
- Parameters:
contextHandler- the context handler to use.
-
AllowedResourceAliasChecker
public AllowedResourceAliasChecker(ContextHandler contextHandler, org.eclipse.jetty.util.resource.Resource baseResource) -
AllowedResourceAliasChecker
public AllowedResourceAliasChecker(ContextHandler contextHandler, Supplier<org.eclipse.jetty.util.resource.Resource> resourceBaseSupplier)
-
-
Method Details
-
getContextHandler
-
getBaseResource
public org.eclipse.jetty.util.resource.Resource getBaseResource() -
initialize
protected void initialize() -
doStart
-
doStop
-
checkAlias
Description copied from interface:AliasCheckCheck if an alias is allowed to be served. If anyAliasCheckreturns true then the alias will be allowed to be served, therefore any alias checker should take things like theContextHandler.getProtectedTargets()and Security Constraints into consideration before allowing a return a value of true.- Specified by:
checkAliasin interfaceAliasCheck- Parameters:
pathInContext- The path the aliased resource was created for.resource- The aliased resourced.- Returns:
- True if the resource is OK to be served.
-
check
-
check
-
isAllowed
-
isSameFile
Deprecated. -
getPath
Deprecated. -
toString
- Overrides:
toStringin classorg.eclipse.jetty.util.component.AbstractLifeCycle
-