当前位置: 首页>>代码示例>>Java>>正文


Java RequestContext.getRequestUser方法代码示例

本文整理汇总了Java中org.apache.hadoop.hbase.ipc.RequestContext.getRequestUser方法的典型用法代码示例。如果您正苦于以下问题:Java RequestContext.getRequestUser方法的具体用法?Java RequestContext.getRequestUser怎么用?Java RequestContext.getRequestUser使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.apache.hadoop.hbase.ipc.RequestContext的用法示例。


在下文中一共展示了RequestContext.getRequestUser方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: getAuthenticationToken

import org.apache.hadoop.hbase.ipc.RequestContext; //导入方法依赖的package包/类
@Override
public Token<AuthenticationTokenIdentifier> getAuthenticationToken()
    throws IOException {
  if (secretManager == null) {
    throw new IOException(
        "No secret manager configured for token authentication");
  }

  User currentUser = RequestContext.getRequestUser();
  UserGroupInformation ugi = null;
  if (currentUser != null) {
    ugi = currentUser.getUGI();
  }
  if (currentUser == null) {
    throw new AccessDeniedException("No authenticated user for request!");
  } else if (!isAllowedDelegationTokenOp(ugi)) {
    LOG.warn("Token generation denied for user="+currentUser.getName()
        +", authMethod="+ugi.getAuthenticationMethod());
    throw new AccessDeniedException(
        "Token generation only allowed for Kerberos authenticated clients");
  }

  return secretManager.generateToken(currentUser.getName());
}
 
开发者ID:wanhao,项目名称:IRIndex,代码行数:25,代码来源:TokenProvider.java

示例2: getActiveUser

import org.apache.hadoop.hbase.ipc.RequestContext; //导入方法依赖的package包/类
/**
 * @return User who called RPC method. For non-RPC handling, falls back to system user
 * @throws IOException When there is IOE in getting the system user (During non-RPC handling).
 */
public static User getActiveUser() throws IOException {
  User user = RequestContext.getRequestUser();
  if (!RequestContext.isInRequestContext()) {
    user = User.getCurrent();
  }
  if (LOG.isTraceEnabled()) {
    LOG.trace("Current active user name is " + user.getShortName());
  }
  return user;
}
 
开发者ID:grokcoder,项目名称:pbase,代码行数:15,代码来源:VisibilityUtils.java

示例3: getAuthenticationToken

import org.apache.hadoop.hbase.ipc.RequestContext; //导入方法依赖的package包/类
@Override
public void getAuthenticationToken(RpcController controller,
                                   AuthenticationProtos.GetAuthenticationTokenRequest request,
                                   RpcCallback<AuthenticationProtos.GetAuthenticationTokenResponse> done) {
  AuthenticationProtos.GetAuthenticationTokenResponse.Builder response =
      AuthenticationProtos.GetAuthenticationTokenResponse.newBuilder();

  try {
    if (secretManager == null) {
      throw new IOException(
          "No secret manager configured for token authentication");
    }

    User currentUser = RequestContext.getRequestUser();
    UserGroupInformation ugi = null;
    if (currentUser != null) {
      ugi = currentUser.getUGI();
    }
    if (currentUser == null) {
      throw new AccessDeniedException("No authenticated user for request!");
    } else if (!isAllowedDelegationTokenOp(ugi)) {
      LOG.warn("Token generation denied for user="+currentUser.getName()
          +", authMethod="+ugi.getAuthenticationMethod());
      throw new AccessDeniedException(
          "Token generation only allowed for Kerberos authenticated clients");
    }

    Token<AuthenticationTokenIdentifier> token =
        secretManager.generateToken(currentUser.getName());
    response.setToken(ProtobufUtil.toToken(token)).build();
  } catch (IOException ioe) {
    ResponseConverter.setControllerException(controller, ioe);
  }
  done.run(response.build());
}
 
开发者ID:grokcoder,项目名称:pbase,代码行数:36,代码来源:TokenProvider.java

示例4: whoAmI

import org.apache.hadoop.hbase.ipc.RequestContext; //导入方法依赖的package包/类
@Override
public void whoAmI(RpcController controller, AuthenticationProtos.WhoAmIRequest request,
                   RpcCallback<AuthenticationProtos.WhoAmIResponse> done) {
  User requestUser = RequestContext.getRequestUser();
  AuthenticationProtos.WhoAmIResponse.Builder response =
      AuthenticationProtos.WhoAmIResponse.newBuilder();
  if (requestUser != null) {
    response.setUsername(requestUser.getShortName());
    AuthenticationMethod method = requestUser.getUGI().getAuthenticationMethod();
    if (method != null) {
      response.setAuthMethod(method.name());
    }
  }
  done.run(response.build());
}
 
开发者ID:grokcoder,项目名称:pbase,代码行数:16,代码来源:TokenProvider.java

示例5: getActiveUser

import org.apache.hadoop.hbase.ipc.RequestContext; //导入方法依赖的package包/类
/**
 * Returns the active user to which authorization checks should be applied.
 * If we are in the context of an RPC call, the remote user is used,
 * otherwise the currently logged in user is used.
 */
private User getActiveUser() throws IOException {
  User user = RequestContext.getRequestUser();
  if (!RequestContext.isInRequestContext()) {
    // for non-rpc handling, fallback to system user
    user = userProvider.getCurrent();
  }
  return user;
}
 
开发者ID:grokcoder,项目名称:pbase,代码行数:14,代码来源:AccessController.java

示例6: getActiveUser

import org.apache.hadoop.hbase.ipc.RequestContext; //导入方法依赖的package包/类
private User getActiveUser() {
  User user = RequestContext.getRequestUser();
  if (!RequestContext.isInRequestContext()) {
    return null;
  }

  //this is for testing
  if (userProvider.isHadoopSecurityEnabled()
      && "simple".equalsIgnoreCase(conf.get(User.HBASE_SECURITY_CONF_KEY))) {
    return User.createUserForTesting(conf, user.getShortName(), new String[]{});
  }

  return user;
}
 
开发者ID:grokcoder,项目名称:pbase,代码行数:15,代码来源:SecureBulkLoadEndpoint.java

示例7: getActiveUser

import org.apache.hadoop.hbase.ipc.RequestContext; //导入方法依赖的package包/类
private User getActiveUser() throws IOException {
  User user = RequestContext.getRequestUser();
  if (!RequestContext.isInRequestContext()) {
    // for non-rpc handling, fallback to system user
    user = User.getCurrent();
  }
  if (LOG.isTraceEnabled()) {
    LOG.trace("Current active user name is "+user.getShortName());
  }
  return user;
}
 
开发者ID:tenggyut,项目名称:HIndex,代码行数:12,代码来源:VisibilityController.java

示例8: getActiveUser

import org.apache.hadoop.hbase.ipc.RequestContext; //导入方法依赖的package包/类
private User getActiveUser() {
  User user = RequestContext.getRequestUser();
  if (!RequestContext.isInRequestContext()) {
    return null;
  }

  //this is for testing
  if("simple".equalsIgnoreCase(conf.get(User.HBASE_SECURITY_CONF_KEY))) {
    return User.createUserForTesting(conf, user.getShortName(), new String[]{});
  }

  return user;
}
 
开发者ID:tenggyut,项目名称:HIndex,代码行数:14,代码来源:SecureBulkLoadEndpoint.java

示例9: getActiveUser

import org.apache.hadoop.hbase.ipc.RequestContext; //导入方法依赖的package包/类
/**
 * Returns the active user to which authorization checks should be applied.
 * If we are in the context of an RPC call, the remote user is used,
 * otherwise the currently logged in user is used.
 */
private User getActiveUser() throws IOException {
  User user = RequestContext.getRequestUser();
  if (!RequestContext.isInRequestContext()) {
    // for non-rpc handling, fallback to system user
    user = userProvider.getCurrent();
  }

  return user;
}
 
开发者ID:wanhao,项目名称:IRIndex,代码行数:15,代码来源:AccessController.java

示例10: getActiveUser

import org.apache.hadoop.hbase.ipc.RequestContext; //导入方法依赖的package包/类
private User getActiveUser() throws IOException {
  User user = RequestContext.getRequestUser();
  if (!RequestContext.isInRequestContext()) {
    throw new DoNotRetryIOException("Failed to get requesting user");
  }

  //this is for testing
  if("simple".equalsIgnoreCase(conf.get(User.HBASE_SECURITY_CONF_KEY))) {
    return User.createUserForTesting(conf, user.getShortName(), new String[]{});
  }

  return user;
}
 
开发者ID:wanhao,项目名称:IRIndex,代码行数:14,代码来源:SecureBulkLoadEndpoint.java

示例11: getAuthMethod

import org.apache.hadoop.hbase.ipc.RequestContext; //导入方法依赖的package包/类
public String getAuthMethod() {
  UserGroupInformation ugi = null;
  User user = RequestContext.getRequestUser();
  if (user != null) {
    ugi = user.getUGI();
  }
  if (ugi != null) {
    return ugi.getAuthenticationMethod().toString();
  }
  return null;
}
 
开发者ID:wanhao,项目名称:IRIndex,代码行数:12,代码来源:TestTokenAuthentication.java

示例12: getActiveUser

import org.apache.hadoop.hbase.ipc.RequestContext; //导入方法依赖的package包/类
/**
 * Returns the active user to which authorization checks should be applied.
 * If we are in the context of an RPC call, the remote user is used,
 * otherwise the currently logged in user is used.
 */
private User getActiveUser() throws IOException {
  User user = RequestContext.getRequestUser();
  if (!RequestContext.isInRequestContext()) {
    // for non-rpc handling, fallback to system user
    user = User.getCurrent();
  }

  return user;
}
 
开发者ID:zwqjsj0404,项目名称:HBase-Research,代码行数:15,代码来源:AccessController.java

示例13: getAuthenticationToken

import org.apache.hadoop.hbase.ipc.RequestContext; //导入方法依赖的package包/类
@Override
public void getAuthenticationToken(RpcController controller,
                                   AuthenticationProtos.TokenRequest request,
                                   RpcCallback<AuthenticationProtos.TokenResponse> done) {
  AuthenticationProtos.TokenResponse.Builder response =
      AuthenticationProtos.TokenResponse.newBuilder();

  try {
    if (secretManager == null) {
      throw new IOException(
          "No secret manager configured for token authentication");
    }

    User currentUser = RequestContext.getRequestUser();
    UserGroupInformation ugi = null;
    if (currentUser != null) {
      ugi = currentUser.getUGI();
    }
    if (currentUser == null) {
      throw new AccessDeniedException("No authenticated user for request!");
    } else if (!isAllowedDelegationTokenOp(ugi)) {
      LOG.warn("Token generation denied for user="+currentUser.getName()
          +", authMethod="+ugi.getAuthenticationMethod());
      throw new AccessDeniedException(
          "Token generation only allowed for Kerberos authenticated clients");
    }

    Token<AuthenticationTokenIdentifier> token =
        secretManager.generateToken(currentUser.getName());
    response.setToken(ProtobufUtil.toToken(token)).build();
  } catch (IOException ioe) {
    ResponseConverter.setControllerException(controller, ioe);
  }
  done.run(response.build());
}
 
开发者ID:daidong,项目名称:DominoHBase,代码行数:36,代码来源:TokenProvider.java

示例14: whoami

import org.apache.hadoop.hbase.ipc.RequestContext; //导入方法依赖的package包/类
@Override
public void whoami(RpcController controller, AuthenticationProtos.WhoAmIRequest request,
                   RpcCallback<AuthenticationProtos.WhoAmIResponse> done) {
  User requestUser = RequestContext.getRequestUser();
  AuthenticationProtos.WhoAmIResponse.Builder response =
      AuthenticationProtos.WhoAmIResponse.newBuilder();
  if (requestUser != null) {
    response.setUsername(requestUser.getShortName());
    AuthenticationMethod method = requestUser.getUGI().getAuthenticationMethod();
    if (method != null) {
      response.setAuthMethod(method.name());
    }
  }
  done.run(response.build());
}
 
开发者ID:daidong,项目名称:DominoHBase,代码行数:16,代码来源:TokenProvider.java

示例15: getActiveUser

import org.apache.hadoop.hbase.ipc.RequestContext; //导入方法依赖的package包/类
/**
 * Returns the active user to which authorization checks should be applied.
 * If we are in the context of an RPC call, the remote user is used,
 * otherwise the currently logged in user is used.
 */
private User getActiveUser() throws IOException {
  User user = RequestContext.getRequestUser();
  if (!RequestContext.isInRequestContext()) {
    // for non-rpc handling, fallback to system user
    user = User.getCurrent();
  }
  return user;
}
 
开发者ID:daidong,项目名称:DominoHBase,代码行数:14,代码来源:AccessController.java


注:本文中的org.apache.hadoop.hbase.ipc.RequestContext.getRequestUser方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。