【问题标题】:implementing user has password in hook menu实现用户在挂钩菜单中有密码
【发布时间】:2015-04-07 10:24:10
【问题描述】:

我们正在为 Drupal 7 站点实施 Web 服务(Web 服务代码不是 drupal 安装文件夹的一部分)。

其中一项网络服务需要在网站上注册用户。 主要障碍是获得 Drupal 也能识别的散列密码。

为此,我遵循关于堆栈溢出的建议,以在 drupal 内实现 REST 服务并从外部服务代码调用该服务。 (这部分似乎也是可能和可实现的)。

已经使用以下代码实现了密码哈希服务:

function GetHashedPassword($string)
{
    require_once DRUPAL_ROOT . '/' . variable_get('password_inc', 'includes/password.inc');

    $hashedpw = user_hash_password($string);

    $data = array(
        'password' => $hashedpw
    );

    header("Access-Control-Allow-Origin: *");

    drupal_json_output($data);
    drupal_exit();
}

现在的主要问题是,即使使用相同的字符串调用此服务,每次都会返回一个新的哈希值..

如果我们需要的东西实际上是可能的,请提供帮助,如果是的话,那么上面的代码可以修复什么

任何帮助表示赞赏

【问题讨论】:

  • 您是要在 Drupal 中还是在外部系统中创建用户?我之前的建议实际上是让您的外部服务触发 Drupal 中的自定义模块来创建用户,并将 id 或完整的用户 json 返回到您的外部脚本。也许您可以详细说明您要达到的目标。
  • 是的,这就是我们所做的。使用 hook_menu 在 drupal 中实现了一个 REST 服务并在外部代码中调用它

标签: php drupal-7


【解决方案1】:

Drupal user_hash_password 函数在每次计算哈希时都会生成一个新盐。这将导致生成新的哈希,因为盐可能与上一个不同。

【讨论】:

  • 感谢您的回答。用户似乎登录正常
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2022-10-09
  • 2014-01-19
  • 2011-08-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多