2011-11-15 28 views
0

我只是愚蠢的还是Drupal有一个很大的缺陷? (可能是前两者..)控制访问单个节点的最佳方式

我建立了一个网站,其中包含一些公开内容和一些私人内容。问题是,即使菜单可以隐藏公开的,未经授权的用户,也不会阻止访问者仅仅输入节点/ 5(如果节点/ 5是私人隐藏页面之一)。

我很困惑这是多么麻烦,要解决。没有基本的功能来解决这个问题,并且尝试了两个模块simple_access和access_control,但它们都无法工作!目前正试图修复一个drupal 6网站。对可能修复这个VERY BASIC功能的模块有任何建议? Drupal是不是意味着处理公司网页,你有外部网页和内部敏感内容?

顺便说一句,Drupal 7处于.9阶段,模块的可用性仍然非常有限,大多数情况下都处于alpha阶段,并且一直像是永远一样,D7没有正在开发吗?

回答

2

将为您解决问题的模块是Nodeaccess;这是模块页面的开头文本:

Nodeaccess是一个Drupal访问控制模块,它提供了对节点的查看,编辑和删除访问。具有“授予节点权限”权限的用户将在节点页面上有一个授予选项卡,允许他们按用户或角色授予对该节点的访问权限。

因此,这将做到你想要的。同样,Drupal的访问系统工作方式意味着任何指向用户无权访问的节点的菜单链接都不会显示给该用户。所以你甚至不需要隐藏你的菜单项,Drupal会为你做:)

关于Drupal 7贡献的模块,'主要'模块(视图,CTools,Devel等)都是很好,并且稳定,在RC或至少beta。由于Drupal是开源的,小型模块的唯一维护者可能没有时间致力于将Drupal 7版本与维护v6模块(许多人仍然使用D6并且仍然存在问题)一起使用。

就我个人而言,我现在已经开发了很多D7网站,并且已经找到了可用的模块以及高质量(大部分)。我想这只取决于你在一天结束时需要什么特定的功能。

0

nodeaccess模块​​(http://drupal.org/project/nodeaccess)应该适合你。

2

我认为你的期望和Drupal的实际工作方式之间只有差距。

Drupal不会根据内容是否在菜单中来限制对内容的访问。在拥有数千个节点的站点上,拥有数千个项目的菜单势不可挡。

Drupal有一个丰富的节点访问系统,有几十个模块可以帮助解决这个问题。请参阅content access control模块列表以了解您可能会用到的想法。

当我运行与模块的具体问题,我倾向于遵循以下几个步骤:

  • 重读README.txt文件并安装。txt文件
  • 重新阅读项目页面,查看它是否链接到任何进一步的文档
  • 阅读项目的问题,看看它们中是否有类似的问题描述(点击右侧栏中的数字链接的项目页面)
  • 创建一个新的测试网站,我安装的唯一东西就是所涉及的模块,然后通过我认为我应该做的步骤,将它们记录在项目问题队列中的新问题中作为“支持请求“,然后以”预期结果“和”实际结果“结束该帖子 - 维护人员通常会在几天后回复时间
相关问题