Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Design patterns 记录级权限和实体结构权限_Design Patterns - Fatal编程技术网

Design patterns 记录级权限和实体结构权限

Design patterns 记录级权限和实体结构权限,design-patterns,Design Patterns,我正忙于更改权限以处理更多场景。所以我的要求是我必须能够告诉用户可以看到哪些实体,以及用户可以看到/编辑/删除实体类型的哪些部分 所以用户1可以看到“属性”(实体):1,2,3,4,6,但他只能看到字段:名称、地址、价格,但只能编辑名称 因此,第一个权限是记录/行级权限,第二个是结构权限(排序:-) 现在我得到了第一个非常好的答案,叫做dataRole,它给了它一个名称、entityType和查询(elasticsearch查询)。然后,我使用查询为每个datarole在elasticsearc

我正忙于更改权限以处理更多场景。所以我的要求是我必须能够告诉用户可以看到哪些实体,以及用户可以看到/编辑/删除实体类型的哪些部分

所以用户1可以看到“属性”(实体):1,2,3,4,6,但他只能看到字段:名称、地址、价格,但只能编辑名称

因此,第一个权限是记录/行级权限,第二个是结构权限(排序:-)

现在我得到了第一个非常好的答案,叫做dataRole,它给了它一个名称、entityType和查询(elasticsearch查询)。然后,我使用查询为每个datarole在elasticsearch上生成别名。因此,当用户请求一个特定的属性时,比如说我组合了entityType为属性的所有dataroles(多索引查询),并执行HEAD请求

现在第二部分让我有点困惑。似乎找不到一个设计模式来表示这一点。我们想到了类似mssql权限的东西,在这里您可以说什么对象=属性字段/列=名称,然后是权限=(按位)

任何想法


谢谢

我最终创建了一个字段名(路径有时会看到我可以将对象作为字段类型)和权限,所以它类似于

'name' : read,write,delete
因此,这将等同于可以读写并使空(删除)字段名“name”

如果字段名作为路径

'image/name' : read,write,delete
谢谢