Class ContainerAuthentication

java.lang.Object
hudson.security.ContainerAuthentication
All Implemented Interfaces:
Serializable, Principal, org.springframework.security.core.Authentication

@Restricted(org.kohsuke.accmod.restrictions.NoExternalUse.class) public final class ContainerAuthentication extends Object implements org.springframework.security.core.Authentication
Authentication implementation for Principal given through HttpServletRequest.

This is used to plug the container authentication to Spring Security, for backward compatibility with Hudson < 1.160.

Author:
Kohsuke Kawaguchi
See Also:
  • Constructor Details

    • ContainerAuthentication

      public ContainerAuthentication(jakarta.servlet.http.HttpServletRequest request)
      Servlet container can tie a ServletRequest to the request handling thread, so we need to capture all the information upfront to allow Authentication to be passed to other threads, like update center does. See JENKINS-5382.
  • Method Details

    • getAuthorities

      public Collection<? extends org.springframework.security.core.GrantedAuthority> getAuthorities()
      Specified by:
      getAuthorities in interface org.springframework.security.core.Authentication
    • getCredentials

      public Object getCredentials()
      Specified by:
      getCredentials in interface org.springframework.security.core.Authentication
    • getDetails

      public Object getDetails()
      Specified by:
      getDetails in interface org.springframework.security.core.Authentication
    • getPrincipal

      public String getPrincipal()
      Specified by:
      getPrincipal in interface org.springframework.security.core.Authentication
    • isAuthenticated

      public boolean isAuthenticated()
      Specified by:
      isAuthenticated in interface org.springframework.security.core.Authentication
    • setAuthenticated

      public void setAuthenticated(boolean isAuthenticated) throws IllegalArgumentException
      Specified by:
      setAuthenticated in interface org.springframework.security.core.Authentication
      Throws:
      IllegalArgumentException
    • getName

      public String getName()
      Specified by:
      getName in interface Principal