Class AuthenticatedHttpServletRequest

java.lang.Object
javax.servlet.ServletRequestWrapper
javax.servlet.http.HttpServletRequestWrapper
io.telicent.servlet.auth.jwt.servlet3.AuthenticatedHttpServletRequest
All Implemented Interfaces:
javax.servlet.http.HttpServletRequest, javax.servlet.ServletRequest

public class AuthenticatedHttpServletRequest extends javax.servlet.http.HttpServletRequestWrapper
An authenticated HTTP Servlet Request, which is a decorator around the original request
  • Field Summary

    Fields inherited from interface javax.servlet.http.HttpServletRequest

    BASIC_AUTH, CLIENT_CERT_AUTH, DIGEST_AUTH, FORM_AUTH
  • Constructor Summary

    Constructors
    Constructor
    Description
    AuthenticatedHttpServletRequest(javax.servlet.http.HttpServletRequest request, io.jsonwebtoken.Jws<io.jsonwebtoken.Claims> jws, String username, ClaimPath rolesClaim)
    Creates a new authenticated request
  • Method Summary

    Modifier and Type
    Method
    Description
    protected RolesHelper
    createRolesHelper(io.jsonwebtoken.Jws<io.jsonwebtoken.Claims> jws, ClaimPath rolesClaim)
    Creates the roles helper used by the isUserInRole(String) method
     
     
    io.jsonwebtoken.Jws<io.jsonwebtoken.Claims>
    Gets the verified JSON Web Token (JWT) for the request
    boolean
     

    Methods inherited from class javax.servlet.http.HttpServletRequestWrapper

    authenticate, changeSessionId, getAuthType, getContextPath, getCookies, getDateHeader, getHeader, getHeaderNames, getHeaders, getIntHeader, getMethod, getPart, getParts, getPathInfo, getPathTranslated, getQueryString, getRequestedSessionId, getRequestURI, getRequestURL, getServletPath, getSession, getSession, isRequestedSessionIdFromCookie, isRequestedSessionIdFromUrl, isRequestedSessionIdFromURL, isRequestedSessionIdValid, login, logout, upgrade

    Methods inherited from class javax.servlet.ServletRequestWrapper

    getAsyncContext, getAttribute, getAttributeNames, getCharacterEncoding, getContentLength, getContentLengthLong, getContentType, getDispatcherType, getInputStream, getLocalAddr, getLocale, getLocales, getLocalName, getLocalPort, getParameter, getParameterMap, getParameterNames, getParameterValues, getProtocol, getReader, getRealPath, getRemoteAddr, getRemoteHost, getRemotePort, getRequest, getRequestDispatcher, getScheme, getServerName, getServerPort, getServletContext, isAsyncStarted, isAsyncSupported, isSecure, isWrapperFor, isWrapperFor, removeAttribute, setAttribute, setCharacterEncoding, setRequest, startAsync, startAsync

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface javax.servlet.ServletRequest

    getAsyncContext, getAttribute, getAttributeNames, getCharacterEncoding, getContentLength, getContentLengthLong, getContentType, getDispatcherType, getInputStream, getLocalAddr, getLocale, getLocales, getLocalName, getLocalPort, getParameter, getParameterMap, getParameterNames, getParameterValues, getProtocol, getReader, getRealPath, getRemoteAddr, getRemoteHost, getRemotePort, getRequestDispatcher, getScheme, getServerName, getServerPort, getServletContext, isAsyncStarted, isAsyncSupported, isSecure, removeAttribute, setAttribute, setCharacterEncoding, startAsync, startAsync
  • Constructor Details

    • AuthenticatedHttpServletRequest

      public AuthenticatedHttpServletRequest(javax.servlet.http.HttpServletRequest request, io.jsonwebtoken.Jws<io.jsonwebtoken.Claims> jws, String username, ClaimPath rolesClaim)
      Creates a new authenticated request
      Parameters:
      request - Original request
      jws - Verified JWT
      username - Username extracted from the JWT
      rolesClaim - Roles claim
  • Method Details

    • createRolesHelper

      protected RolesHelper createRolesHelper(io.jsonwebtoken.Jws<io.jsonwebtoken.Claims> jws, ClaimPath rolesClaim)
      Creates the roles helper used by the isUserInRole(String) method
      Parameters:
      jws - JWT
      rolesClaim - Roles claim
      Returns:
      Roles helper
    • getRemoteUser

      public String getRemoteUser()
      Specified by:
      getRemoteUser in interface javax.servlet.http.HttpServletRequest
      Overrides:
      getRemoteUser in class javax.servlet.http.HttpServletRequestWrapper
    • isUserInRole

      public boolean isUserInRole(String role)
      Specified by:
      isUserInRole in interface javax.servlet.http.HttpServletRequest
      Overrides:
      isUserInRole in class javax.servlet.http.HttpServletRequestWrapper
    • getUserPrincipal

      public Principal getUserPrincipal()
      Specified by:
      getUserPrincipal in interface javax.servlet.http.HttpServletRequest
      Overrides:
      getUserPrincipal in class javax.servlet.http.HttpServletRequestWrapper
    • getVerifiedJwt

      public io.jsonwebtoken.Jws<io.jsonwebtoken.Claims> getVerifiedJwt()
      Gets the verified JSON Web Token (JWT) for the request
      Returns:
      Verified JWT