Package org.fcrepo.auth.common
Class HttpHeaderPrincipalProvider
- java.lang.Object
-
- org.fcrepo.auth.common.HttpHeaderPrincipalProvider
-
- All Implemented Interfaces:
javax.servlet.Filter
,PrincipalProvider
- Direct Known Subclasses:
DelegateHeaderPrincipalProvider
public class HttpHeaderPrincipalProvider extends Object
An example principal provider that extracts principals from request headers.- Author:
- Gregory Jansen, Mike Daines
- See Also:
PrincipalProvider
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
HttpHeaderPrincipalProvider.HttpHeaderPrincipal
-
Constructor Summary
Constructors Constructor Description HttpHeaderPrincipalProvider()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected Principal
createPrincipal(String name)
void
destroy()
void
doFilter(javax.servlet.ServletRequest request, javax.servlet.ServletResponse response, javax.servlet.FilterChain chain)
Set<Principal>
getPrincipals(javax.servlet.http.HttpServletRequest request)
Extract principals from the provided HttpServletRequest.void
init(javax.servlet.FilterConfig filterConfig)
void
setHeaderName(String headerName)
void
setSeparator(String separator)
-
-
-
Constructor Detail
-
HttpHeaderPrincipalProvider
public HttpHeaderPrincipalProvider()
-
-
Method Detail
-
setHeaderName
public void setHeaderName(String headerName)
- Parameters:
headerName
- The name of the header from which to extract principals
-
setSeparator
public void setSeparator(String separator)
- Parameters:
separator
- The string by which to split header values
-
getPrincipals
public Set<Principal> getPrincipals(javax.servlet.http.HttpServletRequest request)
Description copied from interface:PrincipalProvider
Extract principals from the provided HttpServletRequest.If no principals can be extracted, implementations of this method should return the empty set rather than null.
- Parameters:
request
- the request- Returns:
- a set of security principals
-
createPrincipal
protected Principal createPrincipal(String name)
-
init
public void init(javax.servlet.FilterConfig filterConfig)
- Specified by:
init
in interfacejavax.servlet.Filter
-
doFilter
public void doFilter(javax.servlet.ServletRequest request, javax.servlet.ServletResponse response, javax.servlet.FilterChain chain) throws IOException, javax.servlet.ServletException
- Specified by:
doFilter
in interfacejavax.servlet.Filter
- Throws:
IOException
javax.servlet.ServletException
-
destroy
public void destroy()
- Specified by:
destroy
in interfacejavax.servlet.Filter
-
-