nckg/laravel-impersonate

Easily impersonate any user in a Laravel Application

4.0.1 2021-04-21 11:31 UTC

This package is auto-updated.

Last update: 2024-04-21 17:52:37 UTC


README

Build Status Packagist Packagist

Introduction

Easily impersonate any user in your Laravel Application

Installation

You can install the package via composer:

composer require nckg/laravel-impersonate

Add following code to your user model:

    class User
    {
        use \Nckg\Impersonate\Traits\CanImpersonate;
    }

Add following code to your routes file:

    Route::get('users/{id}/impersonate', function ($id) {
        \Auth::user()->setImpersonating($id);
        return redirect()->back();
    });
    Route::get('users/stop-impersonate', function () {
        \Auth::user()->stopImpersonating();
        return redirect()->back();
    });

If you are using Laravel you can add the middleware to your middleware providers

// app/Http/Kernel.php
/**
 * The application's global HTTP middleware stack.
 *
 * @var array
 */
protected $middleware = [
    ...
    \Nckg\Impersonate\Impersonate::class,
];

Testing

composer test

License

The MIT License (MIT).