Drupal 工作流程操作访问与分类访问控制集成?
我正在为我们的 Intranet 构建 DMS 并使用分类层次结构,因为我们需要这种方式的访问控制。所有公司地点都管理(上传、编辑)自己的文档,但应该能够访问所有文档。这是继承给子项的并且工作得很好。
此外,我们需要简单的三步工作流程(草稿、发布、存档)。因此,我引入了编辑者、发布者和文档管理员的角色,并设置了转换的权限。还触发有效(取消)发布文档。
但是(当然)角色发布者的用户可以对所有文档进行转换。但我们希望每个公司地点的发布者(顶级分类级别,见上文)。
这能实现吗?我是否必须自己设置它(我猜“规则”适合这样做)或者是否有其他模块提供帮助。
角色继承是一个猜测,但这只是关于角色(自然)。 我使用并检查了“模块授予”第一个选项。我的想法就是这样进行的。我希望你能明白我的想法。问题。
drupal 6.16 当前
编辑: 我重读了文档并发现了 ie。 http://drupal.org/node/408018 修订分类内容。将重读该内容。
I am building a DMS for our intranet and use a taxonomy hierarchy because we need access control that way. All company locations manage (upload,edit) their own documents but should be able to access all. This is inherited to the child terms and works fine.
Additionally we want simple 3-step workflow (draft,published,archived). So i introduced roles for editor, publisher and docadmin and set permissions for the transitions. Also triggers to effectivly (un)publish documents.
But (of course) a user of role publisher can do the transition for ALL documents. But we want publisher for each company location (top taxonomy level, see above).
Could this be achieved? Do i have to set it up by myself (i guess "rules" is appropriate to do this) or is there another module helping.
role inheritance was a guess, but that is only about roles (naturally).
"module grants" i use and checked first option. That way my thoughts are going. I hope you get my idea resp. problem.
drupal 6.16 current
edit:
I reread the docs and found ie. http://drupal.org/node/408018 Revisioning for categorized content. Will reread that.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您似乎在 Drupal 6 的节点访问 API 中遇到了一个已知问题。授予仅起到批准的作用,因此如果任何访问模块表示用户可以执行某项操作,则其他模块都无法将其取消。我能想到的唯一的其他解决方案是根据两个标准混合模块进行计算,这显然是一个潜在的复杂任务。
当然不推荐,但您可以应用自己的逻辑来扫描授权表,以删除与这两个条件都不匹配的用户条目。在其他两个模块计算出它们的值并将它们保存到数据库后,您必须找到正确的挂钩才能让它执行工作。
好消息:这个问题在 D7 中已得到修复。坏消息:D7 还要一段时间。
Drupal 7 将允许模块批准、拒绝或放弃节点访问决策。因此,您的分类模块可能会说用户已批准这些条款,但拒绝其他条款。同样,工作流可以批准某些阶段并拒绝其他阶段。用户至少需要一次批准且不得拒绝。
It seems you're running into a know issue in Drupal 6's node access api. Grants only work as an approval, so if any access module says a user can perform an action no other module can take it away. The only other solution I can think of would be a mash of the modules to calculate based on both criteria, obviously a potentially complex task.
Certainly not recommended, but you could apply your own logic to scan the grants tables to remove entries for users that don't match up with both criteria. You would have to find the right hook to have it perform its work after both other modules have calculated their values and saved them to the database.
Good news: this is fixed in D7. Bad news: D7 will be a while.
Drupal 7 will allow modules to approve, deny, or abstain from node access decisions. As such, your taxonomy module could say the users are approved for these terms, denied for others. As well, workflow could approve for some stages and deny for others. A user would require at least one approval and no denials.