Package org.apache.zookeeper.server.auth
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 onAuthenticationProviderthat provides additional parameters for more detailed authentication
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classServerAuthenticationProvider.MatchValuesstatic classServerAuthenticationProvider.ServerObjs
-
Constructor Summary
Constructors Constructor Description ServerAuthenticationProvider()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract KeeperException.CodehandleAuthentication(ServerAuthenticationProvider.ServerObjs serverObjs, byte[] authData)This method is called when a client passes authentication data for this scheme.KeeperException.CodehandleAuthentication(ServerCnxn cnxn, byte[] authData)This method is called when a client passes authentication data for this scheme.booleanmatches(String id, String aclExpr)This method is called to see if the given id matches the given id expression in the ACL.abstract booleanmatches(ServerAuthenticationProvider.ServerObjs serverObjs, ServerAuthenticationProvider.MatchValues matchValues)This method is called to see if the given id matches the given id expression in the ACL.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.zookeeper.server.auth.AuthenticationProvider
getScheme, getUserName, isAuthenticated, isValid
-
-
-
-
Method Detail
-
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:AuthenticationProviderThis 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:
handleAuthenticationin interfaceAuthenticationProvider- 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:AuthenticationProviderThis 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:
matchesin interfaceAuthenticationProvider- Parameters:
id- the id to check.aclExpr- the expression to match ids against.- Returns:
- true if the id can be matched by the expression.
-
-