Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/drupal/3.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/solr/3.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
Drupal高级ACL用于;“不可信”;管理员_Drupal_Drupal 6 - Fatal编程技术网

Drupal高级ACL用于;“不可信”;管理员

Drupal高级ACL用于;“不可信”;管理员,drupal,drupal-6,Drupal,Drupal 6,我有一个多站点Drupal-6安装,包含不同客户的网站 在每个站点上,都有一个“管理员”角色,主要包括客户的帐户。 我们希望给这个特权用户尽可能多的权限,但这可能会导致使用Drupal核心权限管理系统的安全漏洞 要避免的主要事情是客户帐户能够在服务器上运行PHP代码(这就像以www数据用户的身份登录服务器……听起来很糟糕) 为了避免这种情况,拒绝角色的PHP代码求值是不够的。由于管理员角色必须具有管理用户的权限,因此他还可以更改用户#1的密码并以超级管理员身份登录站点 第二个目标是拒绝一些“令人

我有一个多站点Drupal-6安装,包含不同客户的网站

在每个站点上,都有一个“管理员”角色,主要包括客户的帐户。 我们希望给这个特权用户尽可能多的权限,但这可能会导致使用Drupal核心权限管理系统的安全漏洞

要避免的主要事情是客户帐户能够在服务器上运行PHP代码(这就像以www数据用户的身份登录服务器……听起来很糟糕)

为了避免这种情况,拒绝角色的PHP代码求值是不够的。由于管理员角色必须具有管理用户的权限,因此他还可以更改用户#1的密码并以超级管理员身份登录站点

第二个目标是拒绝一些“令人困惑”的管理页面(如模块选择),但不拒绝其他页面(如站点信息配置或主题选择等)


我找到了似乎可以解决第一个问题的模块,但我不知道如何解决第二个问题。我在附近找到了一些模块,但似乎没有人适合。。似乎大多数ACL都被认为是用来保护内容,而不是网站本身,好像网站管理员永远都是服务器所有者一样。

我感到你的痛苦-相当多的管理功能在访问控制选项方面不够精细,虽然有许多模块可以解决一个或多个具体的缺点,但我还没有找到通用的模块


这就是说,考虑到您的多站点设置,您可能希望更仔细地查看及其多个“后代”。虽然主要目的是在不同的域上运行一组附属站点,共享一些内容,同时保持其他内容特定于域,但它还包含许多调整,以帮助组织和管理此类设置。所以它可以提供一些你想要的功能。但是请注意,该模块非常复杂,我只建议您在符合一般设置的情况下使用它,而不是仅获得一个或两个ACL功能。

将管理员用户从角色中删除,以便他们无法更改密码。鼓励用户进行密码重置

对于分配用户角色,可以使用角色委派模块,对于节点发布,可以使用覆盖节点选项模块


第二个模块将允许您删除“管理节点”权限,从而从角色中删除大量“过度权限”。

您可以从模块目录中删除php模块。只要您不使用任何php页面,它就可以被删除。

我刚刚编写了这个模块来解决权限过大的问题

该代码尚未出现在drupal.org的官方简历上,但很快就会发布

我希望本模块能对其他解决此问题的人有所帮助


[更新]2010-04-15 19:30+0200:我刚刚将代码上传到CVS,第一个6.x-1.x-dev tarball将于明天格林威治标准时间凌晨0:00左右发布。

我正在使用角色授权模块,因此管理员没有“管理权限”权限。但是他需要一个“管理用户”来创建/删除用户。我修复了user one模块中用户1密码更改的问题,现在我正在寻找一种方法来对网站本身的管理权限进行分区,而不仅仅是内容。。(也就是说,管理员应该有权管理所有内容,更改主题和网站信息,但不能更改模块选择..当然。。但是1。(这不是一个非常干净的方法)2。它不能解决其他安全问题。。我认为我找到的更好的解决方案是删除大多数权限,编写一个具有有限权限/更易于使用的界面的临时管理面板。。