belcebur / belcebur-auth
Doctrine2 multiple authentification
Installs: 1 580
Dependents: 0
Suggesters: 1
Security: 0
Stars: 0
Watchers: 0
Forks: 0
Open Issues: 0
Requires
Suggests
- belcebur/belcebur-basic: Basic Tools from ZF2 + Doctrine + Gedmo Extension / Utilidades varias para ZF2 + Doctrine + Gedmo
- gedmo/doctrine-extensions: Multiple Doctrine Extensions
This package is auto-updated.
Last update: 2025-03-26 18:53:54 UTC
README
Install from composer / Instalar desde Composer
composer require belcebur/belcebur-auth
Packagist: https://packagist.org/packages/belcebur/belcebur-auth
GitHub: https://github.com/Belcebur/BelceburAuth
Configure Adapters / Configurar Adaptadores
Service Manager
English
Create an adapter using the service manager and indicate the name of the service.
You can use one method or both simultaneously
Español
Crear un adaptador mediante el gestor de servicios e indicar el nombre de los servicios.
*Se puede usar un metodo o los dos simultaneamente.*
Example
<?php return array( 'service_manager' => array( 'factories' => array( 'serviceName1' => function (\Zend\ServiceManager\ServiceLocatorInterface $sm) { return new \DoctrineModule\Authentication\Adapter\ObjectRepository(array( 'object_manager' => $sm->get('Doctrine\ORM\EntityManager'), 'identity_class' => 'Application\Entity\User', 'identity_property' => 'email', 'credential_property' => 'password', 'credentialCallable' => function (\Application\Entity\User $entity, $password) { return md5($password); } )); }, 'serviceName2' => function (\Zend\ServiceManager\ServiceLocatorInterface $sm) { return new \DoctrineModule\Authentication\Adapter\ObjectRepository(array( 'object_manager' => $sm->get('Doctrine\ORM\EntityManager'), 'identity_class' => 'Application\Entity\Member', 'identity_property' => 'username', 'credential_property' => 'password', 'credentialCallable' => function (\Application\Entity\Member $entity,$password) { return md5($password); } )); }, ), ), 'belcebur' => array( 'belcebur-auth' => array( 'auth-factories' => array( 'sm-factories' => array('serviceName1',serviceName2,....), 'config-factories' => array() ) ), ), );
Auto Create Service / Auto creando el Servicio
<?php return array( 'belcebur' => array( 'belcebur-auth' => array( 'auth-factories' => array( 'sm-factories' => array(), 'config-factories' => array( 'serviceName1' => array( 'identity_class' => 'Application\Entity\User', 'identity_property' => 'email', 'credential_property' => 'password', 'credentialCallable' => function (\Application\Entity\User $entity,$password) { return md5($password); } ) ), ) ), ), );
Enable Module / Activar Módulo
English
Add to file "application.config.php" the module name BelceburAuth.
Español
Añadir al archivo "application.config.php" el nombre del módulo BelceburAuth.
Example:
<?php return array( 'modules' => array( 'Application', 'BelceburAuth' ), );
How To Use It? / ¿Como utilizarlo?
In The Controller / En El Controller
English
First call to service, and then ask the identity_class indicating that applies adapter.
Español
Primero llamamos al servicio, y luego le pedimos el adaptador indicando el identity_class al que aplica.
Example
/** * @var \BelceburAuth\Service\AuthenticationFactory $authFactory * @var \DoctrineModule\Authentication\Adapter\ObjectRepository $adapter * @var \Zend\Authentication\Result $result */ $authAdapters = $this->getServiceLocator()->get('AuthenticationFactory'); $adapter = $authAdapters->getAuthAdapter('Application\Entity\User'); $adapter->setIdentity($identity); $adapter->setCredential($password); $result = $authAdapters->authenticate($adapter); var_dump($this->identity()); die;