2014-02-21 313 views
0

我有一個Parse雲碼功能,這將創造一個解析類的新對象。在創建該對象的解析雲碼功能將創建讀取分配給一個用戶訪問的ACL和讀/寫訪問雲解析代碼本身。給Parse Cloud Code讀取/寫入此對象的ACL訪問權限的最有效方法是什麼?如何分配ACL解析雲代碼

我看到它提出了使用ParseMasterKey this post。我只是不確定如何授予解析雲代碼它所需要的訪問權限,或者如果它在默認情況下訪問。

回答

1

內部雲代碼

Parse.Cloud.useMasterKey(); 

將授予做這樣的事情寫入DB行的ACL對象,你不必爲...

樣本雲代碼做的讀權限提升的權限在_Role類的查詢後更新ACL ...

qp.first().then(function(role) { 
    _role = role;  
    if (typeof _role === "undefined") { 
     return Parse.Promise.error(_error); 
    } else { 
     cst.parent = _role.get("name"); 
     cst.pid = _role.get("objectId"); 
     return qc.first();  
    }; 
    } 
).then(function(rolechld) { 
     _chrole = rolechld; 
     if (typeof _chrole === "undefined") { 
     return Parse.Promise.error(_errorch); 
    } else { 
     cst.child = _chrole.get("name"); 
     console.log(cst);      
      _role.getACL().setRoleReadAccess(_chrole, true); 
      _role.getRoles().add(_chrole); 
+0

Robert:所以,我的理解是,通過包含Parse.Cloud.useMasterKey();語句在雲端函數開始時,即使該對象的ACL沒有明確授予訪問權限,所有後續查詢都可以讀取/寫入任何內容? – hypermiler

+1

正確。 'Parse.Cloud.userMasterKey();'函數將忽略對象上的所有ACL。一旦執行,它應該適用於您的雲功能/掛鉤的範圍內。 – jmk2142