Class BearerScheme

java.lang.Object
org.apache.hc.client5.http.impl.auth.BearerScheme
All Implemented Interfaces:
Serializable, AuthScheme

@AuthStateCacheable public class BearerScheme extends Object implements AuthScheme, Serializable
Bearer authentication scheme.
Since:
5.3
See Also:
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    private BearerToken
     
    private boolean
     
    private static final org.slf4j.Logger
     
    private final Map<String,String>
     
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    generateAuthResponse(org.apache.hc.core5.http.HttpHost host, org.apache.hc.core5.http.HttpRequest request, org.apache.hc.core5.http.protocol.HttpContext context)
    Generates an authorization response based on the current state.
    Returns textual designation of the given authentication scheme.
    Returns Principal whose credentials are used to generate an authentication response.
    Returns authentication realm.
    boolean
    Authentication process may involve a series of challenge-response exchanges.
    boolean
    Determines if the authentication scheme is expected to provide an authorization response on a per connection basis instead of the standard per request basis
    boolean
    isResponseReady(org.apache.hc.core5.http.HttpHost host, CredentialsProvider credentialsProvider, org.apache.hc.core5.http.protocol.HttpContext context)
    Determines whether or not an authorization response can be generated based on the actual authentication state.
    void
    processChallenge(AuthChallenge authChallenge, org.apache.hc.core5.http.protocol.HttpContext context)
    Processes the given auth challenge.
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Field Details

    • LOG

      private static final org.slf4j.Logger LOG
    • paramMap

      private final Map<String,String> paramMap
    • complete

      private boolean complete
    • bearerToken

      private BearerToken bearerToken
  • Constructor Details

    • BearerScheme

      public BearerScheme()
  • Method Details

    • getName

      public String getName()
      Description copied from interface: AuthScheme
      Returns textual designation of the given authentication scheme.
      Specified by:
      getName in interface AuthScheme
      Returns:
      the name of the given authentication scheme
    • isConnectionBased

      public boolean isConnectionBased()
      Description copied from interface: AuthScheme
      Determines if the authentication scheme is expected to provide an authorization response on a per connection basis instead of the standard per request basis
      Specified by:
      isConnectionBased in interface AuthScheme
      Returns:
      true if the scheme is connection based, false if the scheme is request based.
    • getRealm

      public String getRealm()
      Description copied from interface: AuthScheme
      Returns authentication realm. If the concept of an authentication realm is not applicable to the given authentication scheme, returns null.
      Specified by:
      getRealm in interface AuthScheme
      Returns:
      the authentication realm
    • processChallenge

      public void processChallenge(AuthChallenge authChallenge, org.apache.hc.core5.http.protocol.HttpContext context) throws MalformedChallengeException
      Description copied from interface: AuthScheme
      Processes the given auth challenge. Some authentication schemes may involve multiple challenge-response exchanges. Such schemes must be able to maintain internal state when dealing with sequential challenges
      Specified by:
      processChallenge in interface AuthScheme
      Parameters:
      authChallenge - the auth challenge
      context - HTTP context
      Throws:
      MalformedChallengeException - in case the auth challenge is incomplete, malformed or otherwise invalid.
    • isChallengeComplete

      public boolean isChallengeComplete()
      Description copied from interface: AuthScheme
      Authentication process may involve a series of challenge-response exchanges. This method tests if the authorization process has been fully completed (either successfully or unsuccessfully), that is, all the required authorization challenges have been processed in their entirety.
      Specified by:
      isChallengeComplete in interface AuthScheme
      Returns:
      true if the authentication process has been completed, false otherwise.
    • isResponseReady

      public boolean isResponseReady(org.apache.hc.core5.http.HttpHost host, CredentialsProvider credentialsProvider, org.apache.hc.core5.http.protocol.HttpContext context) throws AuthenticationException
      Description copied from interface: AuthScheme
      Determines whether or not an authorization response can be generated based on the actual authentication state. Generally the outcome of this method will depend upon availability of user credentials necessary to produce an authorization response.
      Specified by:
      isResponseReady in interface AuthScheme
      Parameters:
      credentialsProvider - The credentials to be used for authentication
      context - HTTP context
      Returns:
      true if an authorization response can be generated and the authentication handshake can proceed, false otherwise.
      Throws:
      AuthenticationException - if authorization string cannot be generated due to an authentication failure
    • getPrincipal

      public Principal getPrincipal()
      Description copied from interface: AuthScheme
      Returns Principal whose credentials are used to generate an authentication response. Connection based schemes are required to return a user Principal if authorization applies to for the entire life span of connection.
      Specified by:
      getPrincipal in interface AuthScheme
      Returns:
      user principal
      See Also:
    • generateAuthResponse

      public String generateAuthResponse(org.apache.hc.core5.http.HttpHost host, org.apache.hc.core5.http.HttpRequest request, org.apache.hc.core5.http.protocol.HttpContext context) throws AuthenticationException
      Description copied from interface: AuthScheme
      Generates an authorization response based on the current state. Some authentication schemes may need to load user credentials required to generate an authorization response from a CredentialsProvider prior to this method call.
      Specified by:
      generateAuthResponse in interface AuthScheme
      Parameters:
      request - The request being authenticated
      context - HTTP context
      Returns:
      authorization header
      Throws:
      AuthenticationException - if authorization string cannot be generated due to an authentication failure
      See Also:
    • toString

      public String toString()
      Overrides:
      toString in class Object