Friends Of Symfony User Bundle
1.- Instalación:
En el archivo composer.json
nano composer.json
debajo de:
"require": {
agregar:
"friendsofsymfony/user-bundle": "~2.0@dev"
luego actualizar composer:
php composer.phar update
2.- Habilitación:
A continuación editar el archivo AppKernel.php
nano app/AppKernel.php
debajo de:
$bundles = array(
agregar:
new FOS\UserBundle\FOSUserBundle(),
3.- Personalización de Entidad Usuario
nano src/Petramas/MainBundle/Entity/Usuario.php
agregar debajo de namespace:
use FOS\UserBundle\Model\User as BaseUser;
que la clase herede de BaseUser:
class Usuario extends BaseUser
cambiar el id a protected:
protected $id;
usar el constructor del padre, debajo de:
public function __construct() {
agregar:
parent::__construct();
4.- Configurar la seguridad
nano app/config/security.yml
security: encoders: FOS\UserBundle\Model\UserInterface: sha512 role_hierarchy: ROLE_ADMIN: ROLE_USER ROLE_SUPER_ADMIN: [ROLE_USER, ROLE_ADMIN, ROLE_ALLOWED_TO_SWITCH] providers: fos_userbundle: id: fos_user.user_provider.username firewalls: dev: pattern: ^/(_(profiler|wdt)|css|images|js)/ security: false main: pattern: ^/ form_login: login_path: / provider: fos_userbundle csrf_provider: form.csrf_provider default_target_path: / use_referer: true always_use_default_target_path: true target_path_parameter: _target_path failure_path: / logout: path: /logout target: / invalidate_session: false anonymous: true remember_me: key: %secret% lifetime: 3600 path: / domain: local.petramas.com access_control: - { path: ^/admin/, roles: ROLE_ADMIN }
5.- Configurar FOSUserBundle
nano app/config.yml
habilitar librería traductora:
descomentar:
#translator: { fallback: %locale% }
agregar al final de archivo:
fos_user: db_driver: orm firewall_name: main user_class: Petramas\MainBundle\Entity\Usuario
6.- Importar las rutas de FOSUserBundle:
nano app/config/routing.yml
agregar al final de archivo:
fos_user_security: resource: "@FOSUserBundle/Resources/config/routing/security.xml" fos_user_profile: resource: "@FOSUserBundle/Resources/config/routing/profile.xml" prefix: /profile fos_user_register: resource: "@FOSUserBundle/Resources/config/routing/registration.xml" prefix: /register fos_user_resetting: resource: "@FOSUserBundle/Resources/config/routing/resetting.xml" prefix: /resetting fos_user_change_password: resource: "@FOSUserBundle/Resources/config/routing/change_password.xml" prefix: /profile
7.- Actualizar base de datos
php app/console doctrine:schema:update --force
No hay comentarios.:
Publicar un comentario
Puedes comentar como te gustaría que comenten de ti.