适配器中的ZF2 Doctrine存储非身份验证实体

Im implementing the doctrine authentication adapter (orm2) but im having some problems. At my application the user credentials are stored in a table called user_login. To make this work i have the following settings in my config

'doctrine' => array(
     'authentication' => array(
        'orm_default' => array(
            'object_manager' => 'Doctrine\ORM\EntityManager',
            'identity_class' => '\User\Entity\UserLogin',
            'identity_property' => 'email',
            'credential_property' => 'password',
            'credentialCallable' => '\User\Service\UserLoginService::validatePassword',
        ),
    ),
),

All this is working well but the thing is that i'd rather have the User entity itself in my storage adapter since the UserLogin isnt saying much. Also i want to keep this thing reusable and as you might understand not all application will have a 1:N on their login credentials.

I started to try some stuff myself and created a callback after the login is valid. I tried to insert the correct entity into the storage adapter $authService->getStorage()->write($person); but this seems to fail. Since it is not its root entity as mentioned in the config the storage session keeps empty.

Hope that someone can help me on how to set this up.