soved/laravel-magic-auth

使用魔法链接验证用户

v1.1.4 2020-09-11 06:50 UTC

This package is auto-updated.

Last update: 2024-09-23 17:42:35 UTC


README

快速且安全的无密码认证,适用于大众。

Scrutinizer Code Quality Latest Stable Version Monthly Downloads License

请支持我一杯咖啡 ☕️

要求

  • PHP >= 7.1.3
  • Laravel >= 5.6, 6.0 或 7.0

安装

首先,通过Composer包管理器安装此包

$ composer require soved/laravel-magic-auth

安装包后,您应该发布配置文件

$ php artisan vendor:publish --tag=magic-auth-config

Soved\Laravel\Magic\Auth\Contracts\CanMagicallyLogin接口添加到App\User模型中

<?php

namespace App;

use Illuminate\Notifications\Notifiable;
use Soved\Laravel\Magic\Auth\Traits\CanMagicallyLogin;
use Illuminate\Foundation\Auth\User as Authenticatable;
use Soved\Laravel\Magic\Auth\Contracts\CanMagicallyLogin as CanMagicallyLoginContract;

class User extends Authenticatable implements CanMagicallyLoginContract
{
    use Notifiable, CanMagicallyLogin;
}

最后,将Soved\Laravel\Magic\Auth\Traits\CanMagicallyLogin特性添加到App\User模型中,以实现该接口。

使用方法

此包公开了两个端点,一个用于请求魔法链接(magic/email),另一个用于使用魔法链接进行认证(magic/login)。您的应用程序应通过POST调用,包含用户的电子邮件地址,以请求魔法链接。魔法链接将通过通知发送到电子邮件。您可以自由地通过覆盖CanMagicallyLogin@sendMagicLinkNotification方法来自定义通知。

中间件

您可能希望注册Soved\Laravel\Magic\Auth\Http\Middleware\AuthenticateWithMagicLink中间件,以确保用户通过魔法链接进行认证。

安全漏洞

如果您在此项目中发现安全漏洞,请通过sander@tutanota.de发送电子邮件给Sander de Vos。所有安全漏洞都将得到及时解决。

许可证

此包是开源软件,受MIT许可证许可。