Cakephp和移动应用程序的自定义身份验证

时间:2011-10-30 19:42:52

标签: android api cakephp authentication

嘿,我正在开发一个与Android应用程序结合使用的Web应用程序。现在我想在我的移动应用程序中,用户必须使用与Web应用程序相同的用户数据登录。所以我想向控制器发送用户名和密码,并且在该控制器的登录操作中应该验证用户,并且应该将附加用户ID发送回应用程序(该ID用于应用程序中的多个操作) 。我找了CakePHP的Auth组件,但我找不到任何解决我问题的方法。我希望你能帮助我。

3 个答案:

答案 0 :(得分:2)

public function beforeFilter() {
    parent::beforeFilter();
    $this->Auth->allow('index','view');
    $this->set('logged_in', $this->Auth->loggedIn());
    $this->set('current_user',$this->Auth->user());
    if($this->name == 'Specific') {
            // for the specific controller
            $this->Auth->authenticate = array('Basic');
    } else {
            // everything else
    }
}

结帐KVZ的休息插件可能会感兴趣https://github.com/kvz/cakephp-rest-plugin

答案 1 :(得分:0)

不确定你在cakephp方面需要做些什么,但如果你想在Android设备上安全地存储一组帐户凭据,我建议你看一下{{3} } class。

答案 2 :(得分:0)

AuthComponent有一个login()方法可用于手动登录用户。根据您使用的Cake版本,此方法还会检查您提供的凭据(实际上Auth在2.0中完全重构,对于像您这样的情况更有用,值得一看!)。

您可以以任何方式从您的Android应用程序发送登录凭据(XML,POST参数),在您的登录操作中提取它们并将它们发送到AuthComponent(或者,在2.0中,编写自定义身份验证器对象来处理这一切)。