narekmarkosyan / laravel-admin-telegram-two-factor
为laravel-admin添加基于Telegram的二次验证
v0.0.2
2023-05-09 20:11 UTC
Requires
- php: >=7.4.0
- encore/laravel-admin: ~1.6
- guzzlehttp/guzzle: ^7.5
This package is auto-updated.
Last update: 2024-09-09 22:55:43 UTC
README
灵感来源于 https://github.com/shanerutter/laravel-admin-email-two-factor
将二次验证添加到管理员登录,管理员将通过Telegram接收一条包含6位数的验证码的消息以完成登录。
注意
数据库中添加了一个新的 "telegram_id" 字段,因为laravel-admin默认没有这个字段。安装并完成迁移后,您需要通过数据库设置每个用户的电子邮件地址。目前还没有实现通过UI进行设置的方法。
安装
composer require narekmarkosyan/laravel-admin-telegram-two-factor
迁移
向管理员用户表添加telegram_id字段。
php artisan migrate
配置
在 config/admin.php 文件的扩展部分,添加配置
'extensions' => [
'auth-telegram-two-factor' => [
'enable' => (bool)env('ADMIN_AUTH_TELEGRAM_TWO_FACTOR', true),
'botKey' => env('ADMIN_AUTH_TELEGRAM_TWO_FACTOR_BOT_KEY', true),
'pinLength' => (int)env('ADMIN_AUTH_TELEGRAM_TWO_FACTOR_PIN_LENGTH', 6),
'rememberDays' => (bool)env('ADMIN_AUTH_TELEGRAM_TWO_FACTOR_REMEMBER_DAYS', 1),
]
]
在 .env 文件中,添加配置
ADMIN_AUTH_TELEGRAM_TWO_FACTOR=true
ADMIN_AUTH_TELEGRAM_TWO_FACTOR_BOT_KEY=123456789:AABBB_ZXCVBNMdfghjXCVvb_AA
ADMIN_AUTH_TELEGRAM_TWO_FACTOR_PIN_LENGTH=6
ADMIN_AUTH_TELEGRAM_TWO_FACTOR_REMEMBER_DAYS=1
许可证
在 MIT许可证 (MIT) 下授权。