metromix / reset-password-bundle
Symfony 扩展包,用于添加密码重置功能。
Requires
- php: ^8.0
- ramsey/uuid: ^4.1
- symfony/config: ^5.3
- symfony/dependency-injection: ^5.3
- symfony/deprecation-contracts: ^2.4
- symfony/http-kernel: ^5.3
- symfony/security-core: ^5.3
Requires (Dev)
- doctrine/doctrine-bundle: ^2.4
- doctrine/orm: ^2.9
- phpunit/phpunit: ^9.0 | ^10.0
- roave/security-advisories: dev-latest
- symfony/framework-bundle: ^5.3
- symfony/phpunit-bridge: ^5.3
- vimeo/psalm: ^4.7
Conflicts
This package is not auto-updated.
Last update: 2024-09-23 23:10:42 UTC
README
担心无法处理忘记密码的用户?我们为你准备了解决方案!此扩展包提供了一种安全且开箱即用的方法,允许用户重置他们忘记的密码。
安装
可以使用 Composer 或 Symfony 二进制文件 安装此扩展包。
composer require metromix/reset-password-bundle
使用
有两种方法开始使用,最简单且推荐的方法是使用 Symfony 的 MakerBundle。Maker 将负责从创建配置到生成模板、控制器和实体的所有工作。
使用 Symfony 的 Maker Bundle(推荐)
- 运行
bin/console make:reset-password
,回答几个问题,然后享受我们的扩展包吧!
如果在安装后使用了我们的 Symfony Maker 命令 bin/console make:reset-password
,则您的应用程序已准备就绪。转到 https://your-apps-domain/reset-password
,填写表单,点击发送到您邮箱的链接,更改您的密码。就是这样!重置密码扩展包会处理其余部分。
以上假设您已设置 身份验证 并注册了用户账户,并在应用程序中配置了 Symfony 的 邮件发送器。
配置
您可以在 Maker 创建的 config/packages/reset_password.yaml
配置文件中更改扩展包的默认配置参数。
metromix_reset_password:
request_password_repository: App\Repository\PasswordResetRequestRepository
lifetime: 3600
throttle_limit: 3600
enable_garbage_collection: true
参数
request_password_repository
必需
ResetPasswordRequest 实体存储库的完整命名空间。如果您使用了 make:reset-password
,则此值为 App\Repository\ResetPasswordRequestRepository
。
lifetime
可选 - 默认为 3600
秒
这是创建请求后密码重置请求在秒内有效的长度。
throttle_limit
可选 - 默认为 3600
秒
这是用户在请求后续重置请求之前必须经过的秒数。
将此值设置为 等于或高于 lifetime
将防止用户在之前的重置尝试成功完成或过期之前请求密码重置。
将此值设置为 低于 lifetime
将允许用户多次请求重置密码,即使任何之前的请求都没有成功完成或已过期。这允许处理用户从未收到重置密码请求邮件的情况。
enable_garbage_collection
可选 - 默认为 true
启用或禁用重置密码清理器,该清理器处理可能遗留在持久性中的过期重置密码请求。
支持
请随时为我们的扩展包打开一个问题,以提出问题、问题或建议。有关 Symfony Maker Bundle 的具体问题,尤其是 make:reset-password
,应在 Symfony Maker 存储库 中解决。