首页 > 解决方案 > Yii2 ldap 工具 kosoukhov/yii2-ldap

问题描述

我是 Yii2 的新手,我需要使用 ldap 创建一个登录系统。关于它的信息不多,所以我希望有人能帮助我。

我安装了 kosoukhov/yii2-ldap 但不知道如何实现它。

我尝试如下编辑我的代码,但无法登录。

登录表单.php

class LoginForm extends Model
{
    public $username;
    public $password;
    public $rememberMe = true;

    private $_user;


    /**
     * {@inheritdoc}
     */
    public function rules()
    {
        return [
            // username and password are both required
            [['username', 'password'], 'required'],
            // rememberMe must be a boolean value
            ['rememberMe', 'boolean'],
            // password is validated by validatePassword()
            ['password', 'validatePassword'],
        ];
    }




    public function validatePassword($attribute, $params)
    {

           if (!Yii::$app->ldap->validateUserCredentials('SAMAccountName', 'password')) {
                $this->addError($attribute, 'Incorrect username LDAP or password.');
            }

    }

    public function login()
    {
        if ($this->validate()) {
            return Yii::$app->user->login($this->getUser(), $this->rememberMe ? 3600 * 24 * 30 : 0);
        }

        return false;


    }

    protected function getUser()
    {
        if ($this->_user === null) {
            $this->_user = User::findByUsername($this->username);
        }

        return $this->_user;
    }
}

我真的很感激这里的一些帮助。

谢谢!

标签: yii2ldapyii2-advanced-app

解决方案


推荐阅读