kmaking/multi-auth

基于 Hesto/multi-auth 包的 Laravel 6 多认证

v1.0.0 2018-08-21 16:36 UTC

This package is auto-updated.

Last update: 2024-09-22 17:54:56 UTC


README

  • php artisan multi-auth:install {guard} -f
  • php artisan multi-auth:install {guard} -f --domain
  • php artisan multi-auth:install {guard} {service} -f --lucid

它做什么?

通过一条简单的命令,您可以为您的 Laravel 6 项目设置多认证。该包会安装

  • 模型
  • 迁移
  • 控制器
  • 通知
  • 路由
    • routes/web.php
      • {guard}/login
      • {guard}/register
      • {guard}/logout
      • 密码重置路由
    • routes/{guard}.php
      • {guard}/home
  • 中间件
  • 视图
  • 守卫
  • 提供者
  • 密码经纪人
  • 设置

使用方法

步骤 1:通过 Composer 安装

composer require kmaking/multi-auth --dev

步骤 2:在您的项目中安装 Multi-Auth 文件

php artisan multi-auth:install {singular_lowercase_name_of_guard} -f

// Examples
php artisan multi-auth:install admin -f
php artisan multi-auth:install employee -f
php artisan multi-auth:install customer -f

注意:如果您不提供 -f 标志,它将不会工作。这是一项防止意外激活的保护措施。

替代方案

如果您想在子域中安装 Multi-Auth 文件,必须传递 --domain 选项。

php artisan multi-auth:install admin -f --domain
php artisan multi-auth:install employee -f --domain
php artisan multi-auth:install customer -f --domain

为了能够正确使用此功能,您应该在 .env 文件中添加一个密钥

APP_DOMAIN=yourdomain.com

这将允许我们在路由文件中使用它,并通过 Laravel 路由系统中的域功能对其进行前缀。

使用方式: ['domain' => '{guard}.' . env('APP_DOMAIN')]

步骤 3:迁移新的模型表

php artisan migrate

步骤 4:尝试使用

访问: http://url_to_your_project/guard/login 示例: http://project/admin/login

选项

如果您不想使用模型和迁移,请使用 --model 标志。

php artisan multi-auth:install admin -f --model

如果您不想使用视图,请使用 --views 标志。

php artisan multi-auth:install admin -f --views

如果您不想在您的 routes/web.php 文件中使用路由,请使用 --routes 标志。

php artisan multi-auth:install admin -f --routes

注意

如果您想修改 guard 登出后的重定向路径,请在您的 {guard}Auth\LoginController 中添加并覆盖以下方法

/**
 * Get the path that we should redirect once logged out.
 * Adaptable to user needs.
 *
 * @return string
 */
public function logoutToPath() {
    return '/';
}

此包更改和添加的文件

  • config/auth.php

    • 添加守卫、提供者和密码
  • app/Http/Providers/RouteServiceProvider.php

    • 注册路由
  • app/Http/Kernel.php

    • 注册中间件
  • app/Http/Middleware/

    • 每个守卫的中间件
  • app/Http/Controllers/{Guard}Auth/

    • 新控制器
  • app/{Guard}.php

    • 新模型
  • app/Notifications/{Guard}ResetPassword.php

    • 重置密码通知
  • database/migrations/

    • 新模型的迁移
  • routes/web.php

    • 注册路由
  • routes/{guard}.php

    • 给定守卫的路由文件
  • resources/views/{guard}/

    • 给定守卫的视图

变更日志

注意:在安装包的新版本后,切勿再次安装具有相同守卫的配置。因此,如果您已经安装了 admin 守卫,在更新包到最新版本后不要再次安装它。

Laravel 6.0 支持添加

注意

此包最初来自 Hesto/multi-auth,我们只改进了路由、控制器和视图文件。