Drupal 7 指定角色的Drupal安全性

Drupal 7 指定角色的Drupal安全性,drupal-7,Drupal 7,我的安全有点问题。 我想为我的网站的管理员添加安全问题,我找到了“安全问题”模块。它工作得很好,但对于自动认证的用户,而不是管理员。我想在登录后只检查管理员的安全问题,而不是用户的安全问题。 我尝试读取此模块的.module文件,但很难理解。 那么,我该如何使用这个模块呢。 非常感谢 如果查看.module文件内部,您会发现这一行,第377行 function\u security\u questions\u user\u login(&$form,&$form\u state,$form\u

我的安全有点问题。 我想为我的网站的管理员添加安全问题,我找到了“安全问题”模块。它工作得很好,但对于自动认证的用户,而不是管理员。我想在登录后只检查管理员的安全问题,而不是用户的安全问题。 我尝试读取此模块的.module文件,但很难理解。 那么,我该如何使用这个模块呢。
非常感谢

如果查看.module文件内部,您会发现这一行,第377行

function\u security\u questions\u user\u login(&$form,&$form\u state,$form\u id){

这是修改用户登录表单以包含安全问题的函数

我建议添加一个
if
语句来满足您的条件,例如:

global $user;

// Don't alter form if user isn't an administrator
if (!in_array('administrator', array_values($user->roles))) {
  return;
}

完成此操作后,只需转到“权限”页面,然后取消选中允许管理员绕过安全问题的框

如果查看.module文件,您会发现这一行,第377行

function\u security\u questions\u user\u login(&$form,&$form\u state,$form\u id){

这是修改用户登录表单以包含安全问题的函数

我建议添加一个
if
语句来满足您的条件,例如:

global $user;

// Don't alter form if user isn't an administrator
if (!in_array('administrator', array_values($user->roles))) {
  return;
}

一旦你这样做了,你需要做的就是转到权限页面,取消选中允许管理员绕过安全问题的框。我尝试了你的建议,但问题是这个模块实际上没有为管理员添加安全问题,而是为任何其他角色添加安全问题。我有3个角色:'nor'“恶意用户”、“管理员”、“模式”和我不想在“普通用户”中添加问题。你能帮我吗???编辑后的答案,请重试:-)非常感谢!我明白了:DDon别忘了投票,并将我的答案标记为正确。很高兴分类了,伙计!我尝试了你的建议,但问题是这个模块实际上没有为管理员添加安全问题但对于任何其他角色。我有3个角色:'普通用户','管理员','模式',我不想在'普通用户'中添加问题。你能帮我吗???编辑后的答案,请重试:-)非常感谢!我明白了:DDon别忘了投票,并将我的答案标记为正确。很高兴它已排序,伙计!这应该是模块问题的理想补丁理想情况下,这应该进入模块问题队列中的补丁中。