配置安全性以仅允许某些用户更新条目,但允许在 Backand 中读取所有用户

Posted

技术标签:

【中文标题】配置安全性以仅允许某些用户更新条目,但允许在 Backand 中读取所有用户【英文标题】:Configure Security to allow update of entries only for some users but allow read for all in Backand 【发布时间】:2016-02-19 13:57:43 【问题描述】:

是否可以配置表的安全性,只允许数据库表中条目的某些用户(所有者)修改条目?

例如,在便笺应用程序中,每个便笺都分配给拥有该便笺的用户列表。所有用户都应该能够看到所有笔记,但只有该节点的所有者才能编辑/删除该笔记条目。

我只找到了过滤谁可以看到笔记而不是谁可以编辑笔记的解决方案。

【问题讨论】:

【参考方案1】:

您需要为此创建一个动作。 转到操作表。选择更新期间事件。 这是取自https://github.com/backand/todos-with-users的示例

// if the current user has an *Admin* role then he is allowed to update a todo for other users
  if (userProfile.role == "Admin")
    return ;

  if (!dbRow.created_by)
      throw new Error('Todo with no creator can\'t be updated.');

  // do not allow users to change the created by field 
  if (dbRow.created_by !=  userInput.created_by)
      throw new Error('You can\'t change the creator of the todo.');

  // do not allow non *Admin* users to change the creator of the todo 
  if (dbRow.created_by != userProfile.userId)
      throw new Error('You can only update your own todo.');
  return ;

【讨论】:

以上是关于配置安全性以仅允许某些用户更新条目,但允许在 Backand 中读取所有用户的主要内容,如果未能解决你的问题,请参考以下文章

Spring security - 允许导航但保护某些页面

如何验证快速API以仅允许登录用户

如果用户不允许某些条目类型,HealthKit 无法编写具有多个条目的 HKSample

如果用户不允许某些条目类型,HealthKit 无法编写具有多个条目的 HKSample

更新 ios Appstore 应用程序以仅允许 iPhone

更新 Bootstrap Date Range Datepicker 以仅允许结束日期在开始日期的会计年度内