Spring Security - Como interpretar Roles criptografadas

Boa tarde galera estou com um probleminha que é o seguinte:

  • O portal corporativo da empresa é feito em java e a toda a estrutura de segurança, como login e níveis de acessos são gerenciados pelo Spring Framework.
  • as roles, que são os níveis de acessos, são gravados dentro da tabela de usuário. Por exemplo role_administrador dentro da tabela de usuário
  • Hoje o portal esta mudando e os niveis de acesso tb vão mudar… agora os usuários vão ser de um grupo e o grupo ira ter os niveis de acesso.
  • Por questão de segurança, pensamos em criptografar essa ROLE_ADMINISTRADOR para 90asd79asd9897d09 por exemplo, para que uma pessoa não vá no banco e altere;

a duvida é a seguinte, teria como o spring security chamar algum method ou sei lá, algum forma de descriptografar e essa role voltar a ser ROLE_ADMINISTRADOR ? para que o spring consiga interpretar?

agradeço …

Galera andei fuçando na net achei a classe UserDetail
que possui um metodo chamado getAuthority() que retorn um GrantedAuthority.
E pelo que me parece ele usa esse retorno como as ROLES então eu acho que posso fazer um Override e e sobrescrever o retorno, fazendo ele retornar esse GrantedAuthority com minha role descriptografada :slight_smile:

Quindin, tudo bom?
Cara, sei que esse é um tópico “bem” antigo, mas hoje me deparo com a mesma situação e estou tendo dificuldades aqui pra resolver, no meu caso também preciso guardar as roles criptografadas no banco de dados…

Você pode dizer como conseguiu resolver?