【发布时间】:2012-11-12 23:17:53
【问题描述】:
有人有在 MongoDB 中建模访问控制的示例吗?我想到的情况是:
有一组资源,每个资源都有自己的文档(例如汽车、人、树等)。
用户可以通过显式授权或通过成为资源所有者、存在于另一个集合(例如角色)或其他一些隐式方式来隐式地访问资源。
在一个 collection.find() 方法中,可以应用跳过和限制选项(用于分页),有没有办法检查所有这些显式和隐式路径并产生用户有权访问的资源的结果?
在 MySQL 中,我们使用带有资源 ID、授予用户 ID、授权用户 ID 和操作(读取、写入等)的授权表对此进行了建模。然后,我们在一个查询中选择至少一个子查询为真的所有资源,然后子查询检查所有不同的访问路径,例如一项检查赠款,一项检查所有权等。
我无法在 MongoDB 中完成这项工作,我不确定这是否可能......
谢谢
【问题讨论】:
标签: node.js mongodb datamodel database