c6digital / filament-passwordless-login
Filament 的简单无密码登录。
v0.3.0
2024-03-20 15:11 UTC
Requires
- php: ^8.1
- danharrin/livewire-rate-limiting: ^1.3
- filament/filament: ^3.0
- illuminate/contracts: ^10.0 | ^11.0
- spatie/laravel-package-tools: ^1.15.0
Requires (Dev)
- laravel/pint: ^1.0
- nunomaduro/collision: ^7.9 | ^8.2
- nunomaduro/larastan: ^2.0.1
- orchestra/testbench: ^8.0 | ^9.0
- pestphp/pest: ^2.0
- pestphp/pest-plugin-arch: ^2.0
- pestphp/pest-plugin-laravel: ^2.0
- phpstan/extension-installer: ^1.1
- phpstan/phpstan-deprecation-rules: ^1.0
- phpstan/phpstan-phpunit: ^1.0
- spatie/laravel-ray: ^1.26
This package is not auto-updated.
Last update: 2024-09-18 18:09:01 UTC
README
此包提供了一种新的登录组件,用简单的无密码登录表单替换了传统的电子邮件和密码表单。
安装
您可以通过 composer 安装此包
composer require c6digital/filament-passwordless-login
可选地,您可以使用以下方法发布视图
php artisan vendor:publish --tag="filament-passwordless-login-views"
用法
在 Filament 控面板上注册插件。
use C6Digital\PasswordlessLogin\PasswordlessLoginPlugin; public function panel(Panel $panel): Panel { return $panel ->//... ->plugin(PasswordlessLoginPlugin::make()); }
这将自动注册新的登录页面,覆盖 Filament 提供的页面。它还会注册必要的路由,使用魔法登录链接进行用户认证。
在本地环境中使用密码
在开发过程中发送登录链接电子邮件可能会有困难。如果您仍在存储用户的密码,您可以在 local
环境中启用密码认证。
PasswordlessLoginPlugin::make() ->allowPasswordInLocalEnvironment()
现在,当 APP_ENV=local
时,登录页面将显示“密码”字段。
操作
此包还提供了一个可以在 Filament 表格内使用的 Action
。
use C6Digital\PasswordlessLogin\Actions\LoginLinkAction; $table ->actions([ LoginLinkAction::make(), ]);
命令
如果您需要在不访问网站的情况下生成登录链接,您可以使用 passwordless:link
命令。
php artisan passwordless:link {email}
测试
composer test
变更日志
有关最近更改的更多信息,请参阅 变更日志。
贡献
有关详细信息,请参阅 贡献指南。
安全漏洞
有关如何报告安全漏洞的详细信息,请参阅 我们的安全策略。
鸣谢
许可证
MIT 许可证(MIT)。有关更多信息,请参阅 许可证文件。