- Set<AdminPrincipal> adminPrincipals = subject
- .getPrincipals(AdminPrincipal.class);
- Set<AnonymousPrincipal> anonymousPrincipals = subject
- .getPrincipals(AnonymousPrincipal.class);
- Set<SimpleCredentials> thisCredentials = subject
- .getPublicCredentials(SimpleCredentials.class);
- if (thisCredentials != null)
- thisCredentials.clear();
- if (adminPrincipals != null)
- adminPrincipals.clear();
- if (anonymousPrincipals != null)
- anonymousPrincipals.clear();
+ clearPrincipals(AdminPrincipal.class);
+ clearPrincipals(ArgeoSystemPrincipal.class);
+ clearPrincipals(AnonymousPrincipal.class);
+ clearPrincipals(GrantedAuthorityPrincipal.class);
+
+ // we resync with Spring Security since the subject may have been reused
+ // in beetween
+ // TODO: check if this is clean
+ // subject.getPrincipals().addAll(syncPrincipals());
+