2017 © Pedro Peláez
 

cakephp-plugin cake-impersonate

Impersonate plugin for CakePHP 3

image

jomweb/cake-impersonate

Impersonate plugin for CakePHP 3

  • Monday, October 30, 2017
  • by akutaktau
  • Repository
  • 5 Watchers
  • 1 Stars
  • 12 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 3 Versions
  • 9 % Grown

The README.md

CakeImpersonate Plugin

Build Status Coverage Status Latest Stable Version Minimum PHP Version License Total Downloads, (*1)

Impersonate Component

A component that stores the current authentication session and creates new session for impersonating Users. User can revert back to original authentication sessions without the need to re-login., (*2)

Warning

Always double check that an attacker cannot "spoof" other users in the controller actions. To prevent hijacking of users accounts that the current request User shouldn't/wouldn't have normal access to. You should enable CsfrComponent and SecurityComponent in your Controller when loading this component., (*3)

This Plugin does circumvent default authentication mechanisms, (*4)

Requirement

  1. CakePHP 3.7 and above.

Installation/Upgrading

composer require jomweb/cake-impersonate:"^3.0", (*5)

Plugin Load

Open \src\Application.php add, (*6)

$this->addPlugin('CakeImpersonate');

to your bootstrap() method or call bin/cake plugin load CakeImpersonate, (*7)

Component Load

Load the component from controller, (*8)

$this->loadComponent('CakeImpersonate.Impersonate'); 

Configure Session Key

Open configure\app.php and add, (*9)

'Impersonate' => [
    'sessionKey' => 'OriginalAuth'
]

to the return []; or use Configure::write('Impersonate.sessionKey', 'OriginalAuth'); when loading the component., (*10)

Usage

Impersonate user

This requires the request to be a POST, PUT, DELETE so it can be protected by SecurityComponent and CsrfComponent, (*11)

$this->Impersonate->login($userIdToImpersonate);

Check current user is impersonated

$this->Impersonate->isImpersonated();

Logout from impersonating

$this->Impersonate->logout();

The Versions

30/10 2017

dev-master

9999999-dev

Impersonate plugin for CakePHP 3

  Sources   Download

MIT

The Requires

 

The Development Requires

30/10 2017

v1.1

1.1.0.0

Impersonate plugin for CakePHP 3

  Sources   Download

MIT

The Requires

 

The Development Requires

29/10 2017

v1.0

1.0.0.0

Impersonate plugin for CakePHP 3

  Sources   Download

MIT

The Requires

 

The Development Requires