security: firewalls: main: pattern: ^/ anonymous: ~ form_login: login_path: login check_path: login_check # field names for the username and password fields username_parameter: _email password_parameter: _password #use_referer: true logout: path: /logout target: / remember_me: key: CHANGE_IT!!! # Random key lifetime: 31536000 # 1 year in seconds path: / domain: ~ always_remember_me: true providers: main: entity: class: Name\UserBundle\Entity\User property: email encoders: Name\UserBundle\Entity\User: algorithm: sha1 iterations: 1 encode_as_base64: false role_hierarchy: ROLE_MODERATOR: ROLE_USER ROLE_ADMIN: [ROLE_MODERATOR, ROLE_ALLOWED_TO_SWITCH], (*1)
- Extend User ``` php use ANS\UserBundle\Entity\User as BaseUser; /** * @ORM\Table(name="user") * @ORM\Entity() */ class User extends BaseUser
/** * @ORM\Table(name="token") * @ORM\Entity() */ class Token extends BaseToken, (*2)
- Routing ``` yaml # app/config/routing.yml ans_user: resource: "@ANSUserBundle/Resources/config/user/routing.yml" prefix: /
doctrine: ... orm: ... resolve_target_entities: ANS\UserBundle\Entity\User: Name\UserBundle\Entity\User, (*3)
ans_user: site_name: Name.ru site_email: info@name.ru user_class: Name\UserBundle\Entity\User token_class: Name\UserBundle\Entity\Token token_ttl: 3 day, (*4)
- Kernel ``` yaml # app/AppKernel.php new ANS\UserBundle\ANSUserBundle(),
If UserController exists than it has to extend ANS\UserBundle\Controller\UserController, (*5)
If templates and routes have to be replaced ``` php, (*6)
public function getParent() { return 'ANSUserBundle'; } ```, (*7)