【发布时间】:2019-12-05 19:43:37
【问题描述】:
我正在为我的公司黑客马拉松探索 Alloy。我们有一个复杂的数据模型,我的目标是生成正确示例的图片,以便新员工可以看到它们并了解我们的应用程序。我设法偶然发现并生成了一些图片,但我无法表达以下想法:
角色可以授予对一个或多个字段的访问权限。 用户拥有一个或多个角色,并且可以访问零个或多个字段。当且仅当用户具有授予对该字段的访问权限的角色时,用户才能访问该字段。
这是语法错误的众多尝试之一;希望它能说明我对 Alloy 的工作原理有哪些误解。
sig Role { grantsAccess: some Field }
sig User {
has: some Role,
canAccess: Field
}{
all u: User |
f: Field in u.canAccess iff some r: Role in u.has | f in r.grantsAccess
}
谢谢!
【问题讨论】:
标签: alloy