Javascript 需要登录才能进行写访问的后端即服务?

Javascript 需要登录才能进行写访问的后端即服务?,javascript,parse-platform,single-page-application,Javascript,Parse Platform,Single Page Application,我正在尝试编写一个javascript单页应用程序,允许用户登录,然后在登录后在数据库中创建/修改记录。如果可能的话,我希望避免使用自己的服务器端脚本,而是使用Parse.com、Kinvey.com或Cloudmine.me之类的东西 我的问题是,这些服务具有用户登录能力,但使用API密钥来确定您的应用程序是否具有写访问权限。一旦用户登录,它们似乎不允许您拥有写访问权限。我能想到的实现这一点的唯一方法是在用户的用户数据中存储一个写访问API密钥,这样我就可以让用户登录,获取隐藏的API密钥,然

我正在尝试编写一个javascript单页应用程序,允许用户登录,然后在登录后在数据库中创建/修改记录。如果可能的话,我希望避免使用自己的服务器端脚本,而是使用Parse.com、Kinvey.com或Cloudmine.me之类的东西

我的问题是,这些服务具有用户登录能力,但使用API密钥来确定您的应用程序是否具有写访问权限。一旦用户登录,它们似乎不允许您拥有写访问权限。我能想到的实现这一点的唯一方法是在用户的用户数据中存储一个写访问API密钥,这样我就可以让用户登录,获取隐藏的API密钥,然后将应用程序的API密钥更改为使用该API密钥,这样他们就可以进行写访问。显然,这不是很安全,因为一旦API密钥通过网络发送,即使我们删除了用户的帐户或更改了密码,该用户也将具有写访问权限


也许我走错了方向,所以请随时告诉我。希望这是有道理的。谢谢

您应该能够使用
Parse.ACL
限制对一组用户的访问:


如果要基于每个用户控制访问,则必须在用户对象上维护自定义属性。然后,您可以在
BeforeSaveRequest()
函数中检查自定义属性,并确定用户是否具有写入权限:

默认情况下,大多数BaaS提供程序应提供集合级安全性,有些甚至通过ACL(访问控制列表)提供每个条目的安全性

例如,Kinvey在集合级安全性方面有几个变体:

默认的
Shared
安全级别使得用户可以读取集合中的所有内容,但只能写入自己的项目。您可能还希望使用
专用
安全级别进行设置,以便您只能对自己的项目进行读写

如果希望对安全性进行更细粒度的控制,可以利用入门级权限:

使用入门级权限,您可以向您管理的特定用户或用户组授予细粒度访问权限。您甚至可以确定用户对您的条目(读或写)的安全级别。如果您需要更精细地控制,那么您可以完全使用业务逻辑编写自己的安全性


完全公开-我是Kinvey的工程师。

很有趣,所以ACL将应用于所有对象(包括未来的对象),所以需要登录才能修改它们?换句话说,这将要求用户登录才能写入任何内容?我想我已经解决了-我在设置中禁用了“允许创建客户端类”选项,并将在现有类上进行beforeSave以确认用户已登录。谢谢