web-id / ail
Authentication page to change user easily in debug mode
Installs: 1 261
Dependents: 0
Suggesters: 0
Security: 0
Stars: 2
Watchers: 1
Forks: 0
Open Issues: 2
Requires
- php: ^8.1
- illuminate/contracts: ^9.0
- lab404/laravel-impersonate: ^1.7
- spatie/laravel-package-tools: ^1.13.0
Requires (Dev)
- laravel/pint: ^1.0
- nunomaduro/collision: ^6.0
- nunomaduro/larastan: ^2.0.1
- orchestra/testbench: ^7.0
- pestphp/pest: ^1.21
- pestphp/pest-plugin-laravel: ^1.1
- phpstan/extension-installer: ^1.1
- phpstan/phpstan-deprecation-rules: ^1.0
- phpstan/phpstan-phpunit: ^1.0
- phpunit/phpunit: ^9.5
This package is auto-updated.
Last update: 2024-10-20 06:53:52 UTC
README
Authentication page to change user easily
Installation
1/ Composer
You can install the package via composer:
composer require web-id/ail
2/ Package installation
Install the package (config file and views) with this command :
php artisan ail:install
3/ Configuration
Update the config, especially guard
and allowedEnv
.
This is the content of the published config files:
return [ /* |-------------------------------------------------------------------------- | Route configuration |-------------------------------------------------------------------------- | | These values will change the route configuration for the application routes. | You can define the prefix, the name and set your own middleware on it. | Web middleware is required for authentication and CanImpersonate for security. | */ 'routes' => [ 'prefix' => 'ail', 'name' => 'ail', 'middlewares' => [ 'web', CanImpersonate::class, ], ], /* |-------------------------------------------------------------------------- | Guards to display |-------------------------------------------------------------------------- | | This value is a list of guards that you want to display and impersonate. You | need to set the name on key and the service builder on value. The service | builder is required for search bar on view. By default, you can use | SearchUser::class that search on `name` attribute. You are free and encouraged | to create your own service. | */ 'guards' => [ 'web' => SearchUser::class, ], /* |-------------------------------------------------------------------------- | Allowed environment security |-------------------------------------------------------------------------- | | This value is a list of environments authorized for this package. It will | use APP_ENV. WARNING : This package is not recommended on risky environments | like production or preprod with sensitive data. */ 'allowedEnv' => [ 'local', 'preproduction', ], /* |-------------------------------------------------------------------------- | Pagination |-------------------------------------------------------------------------- | | This value is the pagination number for view. | */ 'perPage' => 15, ];
4/ Update Models
Add Impersonate
Trait on Authenticatable Models you want to impersonate.
class User extends Authenticatable { use Impersonate; }
5/ Update Views
You can add your own logic on resources/views/vendors/ail.
By default, it will display the name
attribute.
6/ More options
See : https://github.com/404labfr/laravel-impersonate
WARNING : Don't forget to set authorization for who can impersonate : https://github.com/404labfr/laravel-impersonate#defining-impersonation-authorization
By default all users can be impersonated.
Changelog
Please see CHANGELOG for more information on what has changed recently.
Credits
License
The MIT License (MIT). Please see License File for more information.