Parse.com角色基本访问不起作用

时间:2013-10-03 19:42:44

标签: parse-platform role rbac

我在访问使用角色ACL创建的对象时遇到问题。我创建了像这样的对象

var Enquiry = Parse.Object.extend("Enquiry");
var enquiry = new Enquiry();
enquiry.set("first", firstName);
enquiry.set("last", lastName);

var enquiryACL = new Parse.ACL();
enquiryACL.setRoleWriteAccess("XXX_User", true);
enquiryACL.setRoleReadAccess("XXX_User", true);
enquiry.setACL(enquiryACL);
enquiry.save();

我稍后尝试访问我在角色“XXX_User”的用户登录时创建的同一个对象

var Item = Parse.Object.extend("Enquiry");
var query = new Parse.Query(Item);

query.find({
    success : function(items) {
        displayItems(items);
    },
    error : function(error) {
        alert("couldn't display list: " + error.code + " " + error.message);
    }
});

现在的问题是,即使我可以在仪表板中看到创建对象,查询也不会返回任何行。查询对象的ACL设置为{“role:XXX_User”:{“write”:true,“read”:true}}

我可以看到数据浏览器中有一个名为“XXX_User”的角色对象,我还可以看到当我在数据浏览器中单击“角色”对象上的“查看关系”时,我登录的用户会显示。

我有什么遗失的吗?对此有任何帮助深表感谢。

1 个答案:

答案 0 :(得分:2)

我弄明白了这个问题。它无法正常工作,因为我创建的XXX_User角色保存为公共读取权限为false。我必须确保该角色是公开可读的,然后它就像一个魅力。