J'ai lu le post précédent concernant une solution pour désactiver @EnableGlobalMethodSecurity, mais cela ne fonctionne pas pour moi. Fondamentalement, je dois activer/désactiver mes annotations @PreAuthorize au démarrage à des fins de test. Voici mon code correspondant:Désactiver @EnableGlobalMethodSecurity pour tester
@Configuration
@EnableGlobalMethodSecurity
public class OpenAMMethodSecurityConfig extends GlobalMethodSecurityConfiguration {
...
@Value("${security.enabled}")
private boolean enabled;
...
protected MethodSecurityMetadataSource customMethodSecurityMetadataSource() {
return enabled ? new SecuredAnnotationSecurityMetadataSource() : null;
}
Alors que le code désactive la sécurité de la méthode, il ne sera pas si le réactivez « activé » drapeau est défini sur true et à moins que l'annotation contient ... (prePostEnabled = true) . En recherchant le code, je pense que le paramètre prePostEnabled est défini sur true à la suite de l'exécution de customMethodSecurityMetadataSource().
S'il vous plaît conseiller ...