public abstract class SecureServer extends HBaseServer
This is part of the SecureRpcEngine
implementation.
SecureClient
Modifier and Type | Class and Description |
---|---|
protected class |
SecureServer.SecureCall |
class |
SecureServer.SecureConnection
Reads calls from a connection and queues them for handling.
|
HBaseServer.Call, HBaseServer.Connection, HBaseServer.Responder
Modifier and Type | Field and Description |
---|---|
protected org.apache.hadoop.security.authorize.ServiceAuthorizationManager |
authManager |
static byte |
CURRENT_VERSION |
static ByteBuffer |
HEADER
The first four bytes of secure RPC connections
|
static Set<Integer> |
INSECURE_VERSIONS |
static org.apache.commons.logging.Log |
LOG |
protected org.apache.hadoop.security.token.SecretManager<org.apache.hadoop.security.token.TokenIdentifier> |
secretManager |
bindAddress, callQueue, callQueueSize, conf, connectionList, CurCall, errorHandler, highPriorityLevel, maxIdleTime, numConnections, paramClass, port, priorityCallQueue, purgeTimeout, replicationQueue, responder, rpcMetrics, running, SERVER, socketSendBufferSize, tcpKeepAlive, tcpNoDelay, thresholdIdleConnections, TRACELOG
Modifier | Constructor and Description |
---|---|
protected |
SecureServer(String bindAddress,
int port,
Class<? extends org.apache.hadoop.io.Writable> paramClass,
int handlerCount,
int priorityHandlerCount,
org.apache.hadoop.conf.Configuration conf,
String serverName,
int highPriorityLevel)
Constructs a server listening on the named port and address.
|
Modifier and Type | Method and Description |
---|---|
void |
authorize(User user,
org.apache.hadoop.hbase.ipc.ConnectionHeader connection,
InetAddress addr)
Authorize the incoming client connection.
|
protected HBaseServer.Connection |
getConnection(SocketChannel channel,
long time)
Subclasses of HBaseServer can override this to provide their own
Connection implementations.
|
org.apache.hadoop.security.token.SecretManager<? extends org.apache.hadoop.security.token.TokenIdentifier> |
getSecretManager() |
void |
setSecretManager(org.apache.hadoop.security.token.SecretManager<? extends org.apache.hadoop.security.token.TokenIdentifier> secretManager) |
void |
stop()
Stops the service.
|
bind, channelRead, channelWrite, closeConnection, get, getCurrentCall, getListenerAddress, getQosLevel, getRemoteAddress, getRemoteIp, getResponseQueueSize, getRpcMetrics, join, openServer, setErrorHandler, setQosFunction, setSocketSendBufSize, start, startThreads, updateCallQueueLenMetrics
public static final ByteBuffer HEADER
public static final byte CURRENT_VERSION
public static final org.apache.commons.logging.Log LOG
protected org.apache.hadoop.security.token.SecretManager<org.apache.hadoop.security.token.TokenIdentifier> secretManager
protected org.apache.hadoop.security.authorize.ServiceAuthorizationManager authManager
protected SecureServer(String bindAddress, int port, Class<? extends org.apache.hadoop.io.Writable> paramClass, int handlerCount, int priorityHandlerCount, org.apache.hadoop.conf.Configuration conf, String serverName, int highPriorityLevel) throws IOException
handlerCount determines
the number of handler threads that will be used to process calls.
IOException
protected HBaseServer.Connection getConnection(SocketChannel channel, long time)
HBaseServer
getConnection
in class HBaseServer
public void stop()
stop
in interface RpcServer
stop
in class HBaseServer
public org.apache.hadoop.security.token.SecretManager<? extends org.apache.hadoop.security.token.TokenIdentifier> getSecretManager()
public void setSecretManager(org.apache.hadoop.security.token.SecretManager<? extends org.apache.hadoop.security.token.TokenIdentifier> secretManager)
public void authorize(User user, org.apache.hadoop.hbase.ipc.ConnectionHeader connection, InetAddress addr) throws org.apache.hadoop.security.authorize.AuthorizationException
user
- client userconnection
- incoming connectionaddr
- InetAddress of incoming connectionorg.apache.hadoop.security.authorize.AuthorizationException
- when the client isn't authorized to talk the protocolCopyright © 2014 The Apache Software Foundation. All Rights Reserved.