Alteração do EntityManager em tempo de execução

Galera,

Depois de várias tentativas e pesquisas, estou postando aqui só para te certeza de que o que quero não é possível, ou então descobrir que é possível e eu é que não consegui fazer. =)
Preciso, em tempo de execução, mudar as credenciais de usuário para acesso ao banco no EntityManager.

A situação é a seguinte: Para cada usuário da aplicação existe um usuário no banco de dados. O acesso ao banco deve ser feito não por um usuário padrão, mas com as credenciais de cada usuário logado, pois o banco realiza controle de acesso a determinadas operações de acordo com o perfil do usuário.

Hoje, é criado um EntityManagerFactory para cada usuário que se loga no sistema. Essas instâncias ficam armazenadas, e a cada vez que o usuário se loga a instância é recuperada de um hash, que relaciona a instância com o login do usuário.
O problema maior é que as instâncias de EMF consomem, juntamente com seus objetos referenciados, muita memória… muuuuuuuuuita!
O que eu queria era, ao criar um EM, através do EMF, passar o properties que sobrescreve as propriedades do EM criado, mas mesmo que eu tente mudar as credenciais, elas permanecem as mesmas.

Existe limitação do que pode ou não ser sobrescrito no EM, no momento da criação?

Abraços!