Já usei login com Filter e com PhaseListener no JSF, mas ainda não usei o Realm, só li sobre ele.
Gostaria de saber a opinião de vocês sobre qual é melhor, quais as vantagens e desvantagens que cada um conhece.
Comparando o Filter com o PhaseListener, fazer o login no PhaseListener me pareceu ser mais robusto e confiável porque o PhaseListener captura também as regras de navegação de acordo com o redirecionamento Forward do Faces, coisa que com o Filter creio não ser possível (até agora não consegui encontrar como). Não consegui encontrar vantagem em usar o filter.
O Realm com JDBC me parece ser bom, mas queria saber também, além das vantagens e desvantagens dele em relação ao outros dois, se posso editar as roles dinamicamente, através de uma tela em minha aplicação, e se posso, como fazer.