2013-07-09 11 views
9

Mój obecny config bezpieczeństwo java wygląda następująco:trzeba sprężyny java bezpieczeństwo config przykład pokazujący podstawowe auth tylko

@Configuration 
@EnableWebSecurity 
public class RootConfig extends WebSecurityConfigurerAdapter { 

@Override 
protected void registerAuthentication(AuthenticationManagerBuilder auth) throws Exception 
{ 
auth.inMemoryAuthentication() 
    .withUser("tester").password("passwd").roles("USER"); 
} 

@Override 
protected void configure(HttpSecurity http) throws Exception { 
    http 
    .authorizeUrls() 
     .anyRequest().authenticated() 
     .and() 
    .httpBasic();  
    } 
} 

Kiedy wykonać żądanie GET za pomocą przeglądarki, będę się błąd 403. bym oczekuję, że pojawi się okienko przeglądarki z prośbą o podanie nazwy użytkownika/hasła. Jaki może być problem?

Odpowiedz

13

UPDATE: ta jest ustalona w Spring Bezpieczeństwa 3.2.0.RC1 +

To jest błąd w konfiguracji zabezpieczeń języka Java, który zostanie rozwiązany do następnego wydania. Stworzyłem SEC-2198, aby go śledzić. Na razie wystarczy jeden z następujących sposobów:

PS: Dzięki za udzielenie Spring Security Java, spróbuj! Trzymaj się komentarze :)

0

ze sprężyną bezpieczeństwa 4.2.3 i prawdopodobnie zanim będzie można po prostu użyć tej konfiguracji:

@Configuration 
@EnableWebSecurity 
public class CommonWebSecurityConfig extends WebSecurityConfigurerAdapter { 

    @Override 
    protected void configure(final HttpSecurity http) throws Exception { 
    http 
     .authorizeRequests() 
      .anyRequest().authenticated() 
      .and() 
     .httpBasic(); 
    } 
    @Autowired 
    public void dlcmlUserDetails(final AuthenticationManagerBuilder auth) throws Exception { 
     auth.inMemoryAuthentication() 
      .withUser("tom").password("111").roles("USER"); 
    } 
} 
Powiązane problemy