使用Drupal权限控制CivicCRM访问



我正试图在CivicCRM中设置一个访问控制系统,以限制某些用户对某些自定义数据字段集的访问。我计划使用Civi ACL来实现这一点,尽管我的理解是它们被Drupal权限覆盖,因此必须在Drupal权限中取消选中"CiviCRM:访问所有自定义数据"复选框。然后,我将能够使用ACL,只允许我想要的用户访问这些字段。

我的问题是,我已经创建了一个Drupal角色"crm用户",但当我以这个角色的用户身份登录时,我仍然可以看到所有的自定义数据,这是我不应该做的。有人知道我可能做错了什么吗?是否有任何其他Drupal权限需要删除?

确保您的"crm用户"角色具有所需的最低权限。正如@Flying的回答中所指出的,"管理CivicCRM"权限允许用户访问整个CivicCRM,因此会覆盖"访问所有自定义数据"权限。

请注意,如果您在需要匿名用户或登录用户访问的公开配置文件或表单中使用自定义数据字段,则这些角色需要具有"访问所有自定义数据"权限,以便他们可以查看和填写这些字段,因此在设置用户角色和权限时需要小心。

一旦你有Drupal权限做正确的事情,你就可以继续在CivicCRM中设置你需要的ACL。

如果用户具有"管理CivicCRM"的Drupal访问权限,则会覆盖"CivicCRM:访问所有自定义数据"设置。

因此,任何具有Drupal访问权限的"管理CivicCRM"用户都可以访问CivicCRM自定义数据,而不管"CivicCRM:访问所有自定义数据"设置如何。

最新更新