org.apache.hadoop.yarn.security.YarnAuthorizationProvider.setPermission()方法的使用及代码示例

x33g5p2x  于2022-02-05 转载在 其他  
字(3.6k)|赞(0)|评价(0)|浏览(68)

本文整理了Java中org.apache.hadoop.yarn.security.YarnAuthorizationProvider.setPermission()方法的一些代码示例,展示了YarnAuthorizationProvider.setPermission()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。YarnAuthorizationProvider.setPermission()方法的具体详情如下:
包路径:org.apache.hadoop.yarn.security.YarnAuthorizationProvider
类名称:YarnAuthorizationProvider
方法名:setPermission

YarnAuthorizationProvider.setPermission介绍

[英]Set permissions for the target object.
[中]设置目标对象的权限。

代码示例

代码示例来源:origin: ch.cern.hadoop/hadoop-yarn-server-resourcemanager

@VisibleForTesting
public static void setQueueAcls(YarnAuthorizationProvider authorizer,
  Map<String, CSQueue> queues) throws IOException {
 for (CSQueue queue : queues.values()) {
  AbstractCSQueue csQueue = (AbstractCSQueue) queue;
  authorizer.setPermission(csQueue.getPrivilegedEntity(),
   csQueue.getACLs(), UserGroupInformation.getCurrentUser());
 }
}

代码示例来源:origin: com.github.jiayuhan-it/hadoop-yarn-server-resourcemanager

@VisibleForTesting
public static void setQueueAcls(YarnAuthorizationProvider authorizer,
  Map<String, CSQueue> queues) throws IOException {
 for (CSQueue queue : queues.values()) {
  AbstractCSQueue csQueue = (AbstractCSQueue) queue;
  authorizer.setPermission(csQueue.getPrivilegedEntity(),
   csQueue.getACLs(), UserGroupInformation.getCurrentUser());
 }
}

代码示例来源:origin: org.apache.hadoop/hadoop-yarn-server-resourcemanager

private void setQueueAcls(
  Map<String, Map<AccessType, AccessControlList>> queueAcls)
  throws IOException {
 authorizer.setPermission(allocsLoader.getDefaultPermissions(),
   UserGroupInformation.getCurrentUser());
 List<Permission> permissions = new ArrayList<>();
 for (Entry<String, Map<AccessType, AccessControlList>> queueAcl : queueAcls
   .entrySet()) {
  permissions.add(new Permission(new PrivilegedEntity(EntityType.QUEUE,
    queueAcl.getKey()), queueAcl.getValue()));
 }
 authorizer.setPermission(permissions,
   UserGroupInformation.getCurrentUser());
}

代码示例来源:origin: org.apache.hadoop/hadoop-yarn-server-resourcemanager

@VisibleForTesting
/**
 * Set the acls for the queues.
 * @param authorizer the yarnAuthorizationProvider
 * @param queues the queues
 * @throws IOException if fails to set queue acls
 */
public static void setQueueAcls(YarnAuthorizationProvider authorizer,
  AppPriorityACLsManager appPriorityACLManager, Map<String, CSQueue> queues)
  throws IOException {
 List<Permission> permissions = new ArrayList<>();
 for (CSQueue queue : queues.values()) {
  AbstractCSQueue csQueue = (AbstractCSQueue) queue;
  permissions.add(
    new Permission(csQueue.getPrivilegedEntity(), csQueue.getACLs()));
  if (queue instanceof LeafQueue) {
   LeafQueue lQueue = (LeafQueue) queue;
   // Clear Priority ACLs first since reinitialize also call same.
   appPriorityACLManager.clearPriorityACLs(lQueue.getQueueName());
   appPriorityACLManager.addPrioirityACLs(lQueue.getPriorityACLs(),
     lQueue.getQueueName());
  }
 }
 authorizer.setPermission(permissions,
   UserGroupInformation.getCurrentUser());
}

代码示例来源:origin: org.apache.hadoop/hadoop-yarn-server-resourcemanager

@Override
public void onReload(AllocationConfiguration queueInfo)
  throws IOException {
 // Commit the reload; also create any queue defined in the alloc file
 // if it does not already exist, so it can be displayed on the web UI.
 Set<String> removedStaticQueues = getRemovedStaticQueues(queueInfo);
 writeLock.lock();
 try {
  if (queueInfo == null) {
   authorizer.setPermission(allocsLoader.getDefaultPermissions(),
     UserGroupInformation.getCurrentUser());
  } else {
   allocConf = queueInfo;
   setQueueAcls(allocConf.getQueueAcls());
   allocConf.getDefaultSchedulingPolicy().initialize(getContext());
   queueMgr.updateAllocationConfiguration(allocConf);
   queueMgr.setQueuesToDynamic(removedStaticQueues);
   applyChildDefaults();
   maxRunningEnforcer.updateRunnabilityOnReload();
  }
 } finally {
  writeLock.unlock();
 }
}

相关文章