Android 从Yii2网站验证我的应用程序中的密码

Android 从Yii2网站验证我的应用程序中的密码,android,hash,yii2,salt,Android,Hash,Yii2,Salt,我和我的朋友正在做最后一个项目。我的朋友有点超前,他所有的数据库都是在Yii2框架上建立的 一切都很好,我们的数据库在AWS上,我通过Android应用程序上的简单请求获得了它 现在我来到了需要使用登录密码的部分。在这里,我被卡住了,因为我能从数据库中获取的所有信息都是带盐的密码。我的朋友在密码部分使用了盐(这是正确的做法) 该网站仍在我们的硬盘上 1) 我们是否必须将其上传到网上,然后才能开发一些 调用数据库的API函数,以便我的应用程序可以访问验证 网站的一部分 2) 也许Yii2已经有了验

我和我的朋友正在做最后一个项目。我的朋友有点超前,他所有的数据库都是在Yii2框架上建立的

一切都很好,我们的数据库在AWS上,我通过Android应用程序上的简单请求获得了它

现在我来到了需要使用登录密码的部分。在这里,我被卡住了,因为我能从数据库中获取的所有信息都是带盐的密码。我的朋友在密码部分使用了盐(这是正确的做法)

该网站仍在我们的硬盘上

1) 我们是否必须将其上传到网上,然后才能开发一些 调用数据库的API函数,以便我的应用程序可以访问验证 网站的一部分

2) 也许Yii2已经有了验证功能 内置Android应用程序可以使用的地方?举个例子 帮个大忙

3) 我看过很多关于API函数的例子, 但所有这些看起来都非常复杂,与Java根本没有关系 全部


Yii2验证实际上是在线的:关于validatePassword函数

您是否在您的用户模型上实现了IdentityInterface? 如果是,那么您可以在yii2restapi中使用它

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);
    }

抱歉英语不好

谢谢您的回复!您能更具体地说一下,如何从Java调用这个方法吗?