Download the PHP package octopyid/laravel-impersonate without Composer

On this page you can find all versions of the php package octopyid/laravel-impersonate. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package laravel-impersonate

Tests Version Downloads License

Laravel Impersonate

Is an Impersonation package for the Laravel Framework. With this package you can easily impersonate other users either manually or using the interface we provide.

You don't have to worry about authorizing who can impersonate or who can be impersonated, coz we provided it by default, just need to adjust it a little according to your rules.

Impersonate Laravel Impersonate Laravel
v4.x 10.x - 11.x v2.x 7.x - 8.x
v3.x 9.x - 10.x v1.x 7.x - 8.x

Installation

Warning

This version is a breaking change, many changes were made to the addition of new features, new UI design, and code structure.

If you are upgrade from an old version, please delete the old assets and republish the assets, configure and reset the limitations on the User Model according to this version.

To install the package, simply follow the steps below.

Install The Package

Publish The Package

Note

Sometimes some users experience the problem of layout after upgrading the package, this can be solved by deleting the public/vendor/octopyid/impersonate folder then republish the assets.

Add HasImpersonation Trait to User Model

Add the trait Octopy\Impersonate\Concerns\HasImpersonation to your User model.

Events

There are two events available that can be used to improve your workflow:

Configuration

This configuration is intended to customize the appearance of Laravel Impersonate, if you don't need a UI, don't forget to set IMPERSONATE_ENABLED to false in your environment file because it is enabled by default.

Please refer to the impersonate.php file to see the available configurations.

Usage

Basic Usage

By default, you don't need to do anything, but keep in mind, Impersonation can be done by anyone if you don't define the rules of who can do impersonation or who can be impersonated.

Defining Limitation

To limit who can do impersonation or who is can be impersonated, add setImpersonateAuthorization(Authorization $authorization) on the Model to enforce the limitation.

The impersonator method is intended for who can perform the impersonation and the impersonated method is intended for anyone who is allowed to be imitated.

Warning

Not defining the Authorization rules in the Model or misdefining them can lead to serious security issues.

The example below uses Laratrust for role management where SUPER_ADMIN can perform impersonation against CUSTOMER. Feel free to use any other Role Management you like.

Advanced Usage

Impersonating User Manually

Sometimes you need Impersonating manually, to perform it, you can use the impersonate singleton.

Or just simply call the impersonation method directly through the User Model.

Defining Guard

Sometimes, you want to use custom guards for authentication, instead of the built-in guards.

Leaving Impersonation Mode

To leave Impersonation mode, you just need to call the leave method on impersonate singleton. This will return you to the original user.

Or via Model directly

Don't hesitate to use a guard if you need it.

Disclaimer

This package can pose a serious security issue if used incorrectly, as anybody will be able to take control of any user's account.

By using this package, you agree that Octopy ID and the contributors of this package cannot be held responsible for any damages caused by using this package.

Security

If you discover any security related issues, please email [email protected] instead of using the issue tracker.

Credits

License

The MIT License (MIT). Please see License File for more information.


All versions of laravel-impersonate with dependencies

PHP Build Version
Package Version
Requires php Version ^8.1
illuminate/contracts Version ^10.0|^11.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package octopyid/laravel-impersonate contains the following files

Loading the files please wait ....