.antMatchers().hasAuthority()不起作用

问题遇到的现象和发生背景
问题相关代码,请勿粘贴截图

@Bean
protected UserDetailsService userDetailsService() {
InMemoryUserDetailsManager manager = new InMemoryUserDetailsManager();
manager.createUser(User.withUsername("zhangsan").password("123").authorities("a1").build());
manager.createUser(User.withUsername("lisi").password("456").authorities("a2").build());
return manager;
}

@Bean
public PasswordEncoder passwordEncoder(){
    return NoOpPasswordEncoder.getInstance();
}


@Override
protected void configure(HttpSecurity http) throws Exception {
    http.authorizeRequests()
            .antMatchers("r/r1").hasAuthority("a1")//其它用户也可以访问到
            .antMatchers("r/r2").hasAuthority("a2")
            .antMatchers("/r/**").authenticated()
            .anyRequest().permitAll()
            .and()
            .formLogin().successForwardUrl("/login-success");
}
运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果