2014-10-01 112 views
0

我正在使用fosuserbundle登錄用戶,這工作正常。FOSUserBundle Symfony2。額外登錄字段

但是,對於一個新的項目,我想用三場登錄這樣的:

Field Companyname 

Field Username 

Field Password 

我的問題是如何添加額外的域來驗證用戶身份?我security.yml

安全

舉例: 編碼器: FOS \ UserBundle \型號\的UserInterface:SHA512

role_hierarchy: 
    ROLE_ADMIN:  ROLE_USER 
    ROLE_SUPER_ADMIN: ROLE_ADMIN 

providers: 
    fos_userbundle: 
     id: fos_user.user_provider.username 

firewalls: 
    main: 
     pattern: ^/ 
     form_login: 
      provider: fos_userbundle 
      csrf_provider: form.csrf_provider 
     logout:  true 
     anonymous: true 

access_control: 
    - { path: ^/login$, role: IS_AUTHENTICATED_ANONYMOUSLY } 
    - { path: ^/register, role: IS_AUTHENTICATED_ANONYMOUSLY } 
    - { path: ^/resetting, role: IS_AUTHENTICATED_ANONYMOUSLY } 
    - { path: ^/admin/, role: ROLE_ADMIN } 

這裏是我的用戶實體類的一個實例。 (User.php)

<?php 
// src/Acme/UserBundle/Entity/User.php 

namespace TommieCrawford\UserBundle\Entity; 

use FOS\UserBundle\Model\User as BaseUser; 
use Doctrine\ORM\Mapping as ORM; 

/** 
* @ORM\Entity 
* @ORM\Table(name="fos_user") 
*/ 
class User extends BaseUser 
{ 
    /** 
    * @ORM\Id 
    * @ORM\Column(type="integer") 
    * @ORM\GeneratedValue(strategy="AUTO") 
    */ 
    protected $id; 

    public function __construct() 
    { 
     parent::__construct(); 
     // your own logic 
    } 
} 

任何知道如何做到這一點的人? 也許有些樣品?

非常感謝!

回答

相關問題