tondakal / yii2-password-zeus
为Yii Framework 2.0提供有用的密码强度验证工具
v1.5.5
2015-11-26 14:37 UTC
Requires
- kartik-v/strength-meter: ~1.1
- kartik-v/yii2-krajee-base: ~1.7
This package is not auto-updated.
Last update: 2024-09-18 18:03:16 UTC
README
此扩展为Yii Framework 2.0提供了一些优秀的密码管理工具。该扩展允许通过模型进行密码强度验证。此外,它还提供了一个高级密码输入小部件,可以显示/隐藏文本并显示密码强度。
最新版本
注意:插件最新版本v1.5.2已发布。有关详细信息,请参阅变更日志。
先决条件
- 确保您已加载正确的jQuery版本(> v1.9.0)。
- 如果您是从旧版本升级,建议在使用扩展之前清理您的Web资源、本地浏览器缓存并重启浏览器。
StrengthValidator
查看演示
这是一个针对模型属性的密码强度验证器。强度验证器允许您为验证密码或字符串配置以下参数。
- 密码是否包含用户名
- 密码是否包含电子邮件字符串
- 最小字符数
- 最大字符数
- 最小小写字母字符数
- 最小大写字母字符数
- 最小数字字符数
- 最小特殊字符数
其他功能
- 包括5个预设(简单、普通、良好、中等、强)。您无需设置上述每个参数,只需调用一个预设,即可自动设置上述所有参数。
- 它包括服务器端和客户端验证。
- 这可以根据您的需求与密码输入小部件(下文所述)一起使用。两种强度验证程序略有不同。密码输入小部件专注于显示强度,不会以任何方式限制用户输入。
注意:StrengthValidator不验证密码字段是否为必填项。您需要使用Yii的
required规则来做到这一点。
PasswordInput
查看演示
这是一个具有可配置选项和基于Krajee Strength Meter JQuery Plugin的动态强度计的高级密码输入小部件。该小部件提供以下各种功能
- 允许您显示/隐藏密码文本(使用bootstrap风格的输入附加组件)。您可以配置此选项是否显示。
- 允许您显示一个高级密码强度计,以计算和显示您在输入时的密码强度。
- 允许您根据模板控制并定位/设计您的计。
- 密码强度计由计条、分数和结论组成。
- 尽可能使用Bootstrap 3.0样式,并内置Yii 2.0 ActiveField功能。
- 独立工作并补充StrengthValidator。
演示
您可以在此处看到这些功能的演示,包括文档和示例。
安装
安装此扩展的最佳方式是通过composer。
注意:检查此扩展的composer.json以了解其需求和依赖项。阅读有关设置您的应用程序的composer.json中
minimum-stability设置的web提示/维基。
运行以下命令之一:
$ php composer.phar require kartik-v/yii2-password "@dev"
或添加以下内容到您的composer.json文件的require部分:
"kartik-v/yii2-password": "@dev"
到您的composer.json文件的require部分。
用法
StrengthValidator
// add this in your model use tondakal\password\StrengthValidator; // use the validator in your model rules public function rules() { return [ [['username', 'password'], 'required'], [['password'], StrengthValidator::className(), 'preset'=>'normal', 'userAttribute'=>'username'] ]; }
PasswordInput
// add this in your view use tondakal\password\PasswordInput; use tondakal\widgets\ActiveForm; // optional $form = ActiveForm::begin(['id' => 'login-form']); echo $form->field($model,'username'); echo $form->field($model, 'password')->widget(PasswordInput::classname(), [ 'pluginOptions' => [ 'showMeter' => true, 'toggleMask' => false ] ]);
许可证
yii2-password 采用 BSD 3-Clause 许可证发布。详情请参阅附带文件 LICENSE.md。