Class ServerAuthenticationProvider

java.lang.Object
org.apache.zookeeper.server.auth.ServerAuthenticationProvider
All Implemented Interfaces:
AuthenticationProvider
Direct Known Subclasses:
KeyAuthenticationProvider

public abstract class ServerAuthenticationProvider extends Object implements AuthenticationProvider
A variation on AuthenticationProvider that provides additional parameters for more detailed authentication
  • Constructor Details

    • ServerAuthenticationProvider

      public ServerAuthenticationProvider()
  • Method Details

    • handleAuthentication

      public abstract KeeperException.Code handleAuthentication(ServerAuthenticationProvider.ServerObjs serverObjs, byte[] authData)
      This method is called when a client passes authentication data for this scheme. The authData is directly from the authentication packet. The implementor may attach new ids to the authInfo field of cnxn or may use cnxn to send packets back to the client.
      Parameters:
      serverObjs - cnxn/server/etc that received the authentication information.
      authData - the authentication data received.
      Returns:
      indication of success or failure
    • matches

      public abstract boolean matches(ServerAuthenticationProvider.ServerObjs serverObjs, ServerAuthenticationProvider.MatchValues matchValues)
      This method is called to see if the given id matches the given id expression in the ACL. This allows schemes to use application specific wild cards.
      Parameters:
      serverObjs - cnxn/server/etc that received the authentication information.
      matchValues - values to be matched
    • handleAuthentication

      public final KeeperException.Code handleAuthentication(ServerCnxn cnxn, byte[] authData)
      Description copied from interface: AuthenticationProvider
      This method is called when a client passes authentication data for this scheme. The authData is directly from the authentication packet. The implementor may attach new ids to the authInfo field of cnxn or may use cnxn to send packets back to the client.
      Specified by:
      handleAuthentication in interface AuthenticationProvider
      Parameters:
      cnxn - the cnxn that received the authentication information.
      authData - the authentication data received.
      Returns:
      TODO
    • matches

      public final boolean matches(String id, String aclExpr)
      Description copied from interface: AuthenticationProvider
      This method is called to see if the given id matches the given id expression in the ACL. This allows schemes to use application specific wild cards.
      Specified by:
      matches in interface AuthenticationProvider
      Parameters:
      id - the id to check.
      aclExpr - the expression to match ids against.
      Returns:
      true if the id can be matched by the expression.