Explorar o código

Revert "[security] Added support from doAs from a non visible path"

This reverts commit e460c5e0d373f20bbdf1c88d12c328e9a19822b3.
Enrico Berti %!s(int64=11) %!d(string=hai) anos
pai
achega
f0565f36f4
Modificáronse 2 ficheiros con 25 adicións e 37 borrados
  1. 1 1
      apps/security/src/security/api/hdfs.py
  2. 24 36
      apps/security/static/js/hdfs.ko.js

+ 1 - 1
apps/security/src/security/api/hdfs.py

@@ -54,7 +54,7 @@ def list_hdfs(request, path):
     else:
       json_response = display(request, path)
   except:
-    json_response = HttpResponse(json.dumps({'files': [], 'page': {}, 'status': 403}), mimetype="application/json") # AccessControlException: Permission denied: user=test, access=READ_EXECUTE, inode="/tmp/dir":romain:supergroup:drwxr-xr-x:group::r-x,group:bob:---,group:test:---,default:user::rwx,default:group::r--,default:mask::r--,default:other::rwx (error 403)
+    json_response = HttpResponse(json.dumps({'files': [], 'page': {}}), mimetype="application/json") # AccessControlException: Permission denied: user=test, access=READ_EXECUTE, inode="/tmp/dir":romain:supergroup:drwxr-xr-x:group::r-x,group:bob:---,group:test:---,default:user::rwx,default:group::r--,default:mask::r--,default:other::rwx (error 403)
 
   if json.loads(request.GET.get('isDiffMode', 'false')):
     request.doas = 'hdfs'

+ 24 - 36
apps/security/static/js/hdfs.ko.js

@@ -116,7 +116,6 @@ var Assist = function (vm, assist) {
   self.pagenum = ko.observable(1);
   self.fromLoadMore = false;
   self.fromRebuildTree = false;
-  self.excludePath = "";
 
   self.acls = ko.observableArray();
   self.originalAcls = ko.observableArray();
@@ -277,17 +276,14 @@ var Assist = function (vm, assist) {
   self.refreshTree = function (force) {
     self.growingTree(jQuery.extend(true, {}, self.initialGrowingTree));
     Object.keys(self.treeAdditionalData).forEach(function (path) {
-      if (path.indexOf(self.excludePath) > -1 ){
-        if (typeof force == "boolean" && force) {
+      if (typeof force == "boolean" && force) {
+        self.fetchPath(path);
+      } else {
+        if (self.treeAdditionalData[path].loaded) {
           self.fetchPath(path);
-        } else {
-          if (self.treeAdditionalData[path].loaded) {
-            self.fetchPath(path);
-          }
         }
       }
     });
-    self.excludePath = "";
   }
 
   self.rebuildTree = function (leaf, paths) {
@@ -353,36 +349,28 @@ var Assist = function (vm, assist) {
         'isDiffMode': self.isDiffMode()
       },
       function (data) {
-        if (data.status != null && data.status == 403){
-          self.updatePathProperty(self.growingTree(), _path, "nodes", []);
-          self.excludePath = _path;
-          self.loadData(self.growingTree());
+        self.loadParents(data.breadcrumbs);
+        if (data['files'] && data['files'][0] && data['files'][0]['type'] == 'dir') { // Hack for now
+          $.each(data.files, function (index, item) {
+            self.convertItemToObject(item);
+          });
         }
         else {
-          self.loadParents(data.breadcrumbs);
-          if (data['files'] && data['files'][0] && data['files'][0]['type'] == 'dir') { // Hack for now
-            $.each(data.files, function (index, item) {
-              self.convertItemToObject(item);
-            });
-          }
-          else {
-            self.convertItemToObject(data);
-          }
-          self.getTreeAdditionalDataForPath(_path).loaded = true;
-          if (data.page != null && data.page.number != null){
-            self.updatePathProperty(self.growingTree(), _path, "page", data.page);
-          }
-          if (typeof loadCallback != "undefined"){
-            loadCallback(data);
-          }
-          else {
-            self.loadData(self.growingTree());
-          }
-          if (typeof optionalPath == "undefined"){
-            self.getAcls();
-          }
+          self.convertItemToObject(data);
+        }
+        self.getTreeAdditionalDataForPath(_path).loaded = true;
+        if (data.page != null && data.page.number != null){
+          self.updatePathProperty(self.growingTree(), _path, "page", data.page);
+        }
+        if (typeof loadCallback != "undefined"){
+          loadCallback(data);
+        }
+        else {
+          self.loadData(self.growingTree());
+        }
+        if (typeof optionalPath == "undefined"){
+          self.getAcls();
         }
-
       }).fail(function (xhr, textStatus, errorThrown) {
         $(document).trigger("error", xhr.responseText);
       });
@@ -461,7 +449,7 @@ var HdfsViewModel = function (initial) {
 
   self.doAs = ko.observable(initial.user);
   self.doAs.subscribe(function () {
-	  self.assist.refreshTree();
+	self.assist.refreshTree();
   });
   self.availableHadoopUsers = ko.observableArray();
   self.availableHadoopGroups = ko.observableArray();