Adicionar dinamicamente funções a um usuário

Estamos usando o recurso de funções do Symfony2 para restringir o acesso dos usuários a determinadas partes do nosso aplicativo. Cada uma de nossas entidades de usuário possui muitas entidades de assinatura com data de início e fim e os usuários podem comprar assinaturas anuais.

Agora, existe uma maneira de adicionar dinamicamente uma função a um usuário com base em se ele possui uma assinatura 'ativa'? No Rails, eu simplesmente deixaria o modelo lidar com os direitos necessários, mas eu sei que, por design, as entidades do symfony2 não devem ter acesso ao Doctrin

Sei que você pode acessar as associações de uma entidade a partir de uma instância da entidade, mas isso passaria portodo os objetos de assinatura do usuário e isso me parece desnecessariamente desnecessári

questionAnswers(2)

yourAnswerToTheQuestion