从YII2网站上的应用程序中验证密码



我和我的朋友正在研究最终项目。我的朋友有点领先,并在YII2框架上制作了所有数据库。

一切正常,我们的数据库在AWS上,我通过Android应用程序的简单请求得到了它。

现在,我来到了需要使用login-password的部分。在这里,我被卡住了,因为我可以从数据库中获取的只是盐密码。我的朋友在密码部分上使用了盐(这是正确的选择(。

该网站仍在我们的硬盘上。

1(我们必须在线上载它,然后才开发一些 调用数据库的API函数,因此我的应用程序可以访问验证 网站的一部分?

2(也许YII2已经具有验证功能 Android应用可以使用的地方建造?一个例子就是 超级热心。

3(我看到了很多有关API函数的示例, 但是所有人看起来都很复杂,并且与Java无关 全部。

yii2验证实际上是在线在线:https://github.com/yiisoft/yii2-framework/blob/master/master/base/base/security.php on ValidatePassword函数。

您是否在用户模型上实现IdentityInterface?如果是,则可以在YII2 REST API中使用它。

public function actionLoginUser(){
    $data = Yii::$app->request->post();
    $username = $data['username'];
    $password = $data['password'];
    $user = User::findByUsername($username);
    if($user->validatePassword($password)){
     //your next response 
    }        
}

validatePassword方法是这样的:

public function validatePassword($password)
    {
        return Yii::$app->security->validatePassword($password, $this->password_hash);
    }

对不起,英语不好

最新更新