yii2 - 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;
}
}
我真的很感激这里的一些帮助。
谢谢!
解决方案
推荐阅读
- drupal-8 - “drush cache-rebuild”抛出未找到驱动程序错误
- python - 如何使用python在字符串和整数之间添加空格
- sublimetext3 - SublimeText3 书签
- acrcloud - 包含 ACRCloud Native Lib 时我自己的 Native Lib 崩溃
- r - 未来等待在单核机器上执行
- forms - 用户名-VBA-访问
- javascript - 使用 React Navigation 进行左右导航
- javafx - 在 JavaFX 中,我如何判断哪个 Stage 位于另一个 Stage 前面?
- javascript - 如何将数据从 VueJS 组件传递到 main.js?
- heroku - 部署到 Heroku 的 Meteor 应用程序因 CloudFlare Flexible SSL 失败