summerblue/sudo-su

用于登录其他用户的实用程序包

1.1.2 2018-02-02 02:37 UTC

This package is not auto-updated.

Last update: 2024-09-15 06:10:17 UTC


README

此项目是从https://github.com/viacreative/sudo-su 分支出来的,以下是所做的更改

  1. 修复了退出用户后无法获取属性的bug;
  2. 限制了用户数量;
  3. 仅选中用户;

Demonstration

Licence: MIT

一个 Laravel 5.4 实用程序包,允许开发者在开发期间登录其他用户。

安装

要安装此包,请按照以下步骤操作。

使用 Composer 安装包

$ composer require summerblue/sudo-su

在 .env 文件中指定选定的用户

SUDO_USER_IDS=1,2,3

将包的服务提供者添加到项目中的 AppServiceProvider

class AppServiceProvider extends ServiceProvider
{
    public function register()
    {
        if (config('app.debug')) {
            $this->app->register('VIACreative\SudoSu\ServiceProvider');
        }
    }
}

⚠️ 警告:您不应像通常在 config/app.php 文件中那样全局注册提供者。有关更多信息,请参阅此处免责声明

在布局文件中包含部分视图。

@if (config('app.debug'))
    @include('sudosu::user-selector')
@endif

最后,发布包的资产(没有此步骤包将无法工作)

$ php artisan vendor:publish

配置

运行 vendor:publish 后,您的项目中应出现一个名为 sudosu.php 的配置文件。在此文件中,有两个配置值

sudosu.allowed_tlds 数组

默认情况下,该包将在没有 .dev.local 顶级域的任何域名上禁用自身。这是一种安全措施,以减少在生产环境中意外启用包的风险。如果您在开发中有不同的顶级域,可以编辑配置选项 sudosu.allowed_tlds

sudosu.user_model 字符串

应用程序用户模型的路径。这将用于检索选择下拉框中显示的用户。这必须是 Eloquent 模型实例。默认设置为 App\User

免责声明 - 危险!

如果使用不当,此包可能引发严重的安全问题,因为任何人都可以控制任何用户的账户。请确保仅在调试/本地环境中注册服务提供者。

默认情况下,该包将在没有 .dev.local 顶级域的任何域名上禁用自身。这是一种安全措施,以减少在生产环境中意外启用包的风险。如果您在开发中有不同的顶级域,可以编辑配置选项 sudosu.allowed_tlds

使用此包,您同意 VIA Creative 和此包的贡献者对使用此包造成的任何损害不承担责任。