Преглед изворни кода

Using createRemoteUser in non-secure mode and createProxyUser in secure mode

vinithra пре 15 година
родитељ
комит
b284646112
1 измењених фајлова са 6 додато и 1 уклоњено
  1. 6 1
      apps/beeswax/java/src/com/cloudera/beeswax/BeeswaxServiceImpl.java

+ 6 - 1
apps/beeswax/java/src/com/cloudera/beeswax/BeeswaxServiceImpl.java

@@ -595,7 +595,12 @@ public class BeeswaxServiceImpl implements BeeswaxService.Iface {
   throws BeeswaxException
   {
     try{
-      UserGroupInformation ugi = UserGroupInformation.createProxyUser(state.query.hadoop_user, UserGroupInformation.getLoginUser());
+      UserGroupInformation ugi;
+      if (UserGroupInformation.isSecurityEnabled())
+        ugi = UserGroupInformation.createProxyUser(state.query.hadoop_user, UserGroupInformation.getLoginUser());
+      else {
+        ugi = UserGroupInformation.createRemoteUser(state.query.hadoop_user);
+      }
       return ugi.doAs(action);
     } catch (UndeclaredThrowableException e) {
       if (e.getUndeclaredThrowable() instanceof PrivilegedActionException) {