Printemps de sécurité ne permettent pas de CSS ou JS ressources à charger
La ressource est sous src/main/resources/static/css ou src/main/resources/static/js, je suis en utilisant le printemps de démarrage, et de la classe de sécurité:
@Configuration
@EnableWebMvcSecurity
@EnableGlobalAuthentication
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
// http.authorizeRequests().antMatchers("/", "/index", "/quizStart")
// .permitAll().anyRequest().authenticated();
// http.formLogin().loginPage("/login").permitAll().and().logout()
// .permitAll();
}
@Override
protected void configure(AuthenticationManagerBuilder auth)
throws Exception {
auth.inMemoryAuthentication().withUser("test").password("test")
.roles("USER");
}
}
Il fonctionne bien (ressources peuvent être chargés) quand j'ai accès à "/index" de votre navigateur, cependant, si je décommentez les quatre lignes dans la classe, les ressources ne peuvent pas être chargées, les quatre lignes de moyens:
http.authorizeRequests().antMatchers("/", "/index", "/quizStart")
.permitAll().anyRequest().authenticated();
http.formLogin().loginPage("/login").permitAll().and().logout()
.permitAll();
Quelqu'un pourrait-il aider ? Merci à l'avance.
OriginalL'auteur Junjie | 2014-08-18
Vous devez vous connecter pour publier un commentaire.
Vous voulez probablement assurez-vous d'avoir votre répertoire contenant ces éléments, comme permitAll.
Voici un extrait de mon ressort du contexte de sécurité du fichier. Sous le répertoire de ressources, j'ai js, css, et les images de dossiers qui ont donné les autorisations par cette ligne.
http.authorizeRequests().antMatchers("/css/**", "/js/**", "/images/**").permitAll();
enprotected void configure(HttpSecurity http)
et puis ça marche, merci beaucoup.Pas de problème. J'ai utilisé un très doux archétype maven, j'ai trouvé en ligne pour générer ce projet, et il a commencé avec un groupe de travail, spring MVC, spring security, JPA, et thymeleaf projet. Il a un très bon printemps java config configuration par défaut, vous pouvez vérifier: github.com/kolorobot/spring-mvc-quickstart-archetype.
Il est vraiment bon pour moi et je dois rejoindre le regardé la liste, va avoir un essai plus tard, merci encore~
Où ce fichier doit être situé? Des exemples?
Printemps de Démarrage, par défaut, de permettre l'accès à
/css/**
,/js/**
,/images/**
, et/**/favicon.ico
.OriginalL'auteur John Humphreys - w00te
Pour une raison quelconque, cela ne fonctionne pas pour moi:
J'ai dû ajouter ceci:
Aussi, cette ligne doit être après le code qui restrics accès.
a travaillé pour moi aussi, merci!
OriginalL'auteur Sande
Ajouter la suite
.anyRequest(); va bloquer votre site
Travaillé..Bravo, c'est exactement la question que j'avais. Merci encore.
OriginalL'auteur Yogesh Bombe
vous pouvez également utiliser directement comme "/*.js" pour un fichier spécifique ou "/ressources/**" pour le répertoire
OriginalL'auteur Om Sharma
J'ai eu le même problème et changement de l'accès aux "permitAll" n'a pas aidé.
J'ai créé un nouveau http motif où j'ai mis de la sécurité "aucun" et puis j'ai été en mesure de télécharger les fichiers css et js sans authentification.
OriginalL'auteur JohnP
Ce finalement fonctionné pour moi. Le /home (qui fera apparaître la page de connexion) et les messages d'erreur n'ont pas besoin d'authentification. Toutes les ressources sont permitAll, et l' /url principale est authentifié. Toute autre url (par exemple. /utilisateurs /clients, etc..) devra être ajouté comme isAuthenticated()
OriginalL'auteur Shahriar