wir sind auf ein Problem mit einem Spring Webservice gestoßen. Wir verwenden Spring Security, um unser Admin-Backend zu sichern, um API-Schlüssel zu generieren. Wenn wir es auf unseren lokalen Maschinen (Windows und Mac OS) bereitstellen, funktioniert es gut und die Seite lädt. Wenn wir versuchen, es auf einer VM mit Debian oder Ubuntu zu implementieren, laden sich die nicht gesicherten Endpunkte, aber sobald wir das Admin-Backend erreichen, wird der Server blockiert und die Seite wird nicht geladen. Wir haben versucht, es mit der grabletask bootRun aus dem git repo zu implementieren, einen Krieg zu kompilieren und diesen in eine Tomcat-Instanz zu laden und ein jar zu kompilieren und das auszuführen. Nichts davon hat funktioniert. Wir bekommen keine Ausnahmen in der Konsole und es sieht so aus, als ob es gut läuft, aber nachdem wir das Backend getroffen haben, wird auch keine andere Seite geladen, auch nicht die, die vorher gearbeitet haben.Spring Security Absturz bei der Bereitstellung auf Linux-Server
Dies ist die Security Config ist
package me.probE466.config;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Configuration;
import org.springframework.security.config.annotation.authentication.builders.*;
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.config.annotation.web.configuration.*;
@EnableWebSecurity
@Configuration
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
@Autowired
public void configureGlobal(AuthenticationManagerBuilder auth) throws Exception {
// auth
// .inMemoryAuthentication()
// .withUser("user").password("password").roles("ADMIN");
}
protected void configure(HttpSecurity http) throws Exception {
http.csrf().ignoringAntMatchers("/post");
http.authorizeRequests()
.antMatchers("/admin/**")
.authenticated()
.antMatchers("/**").permitAll().and().httpBasic();
}
}
Diese Der Controller
@RequestMapping(value = "/admin", method = RequestMethod.GET)
public ModelAndView getTest() {
return new ModelAndView("addapi");
}
@RequestMapping(value = "/admin", method = RequestMethod.POST)
public
@ResponseBody
String addApiKey(@RequestParam("userName") String userName) {
User user = new User();
String key = generateSecureApiKey(32);
user.setUserKey(key);
user.setUserName(userName);
userRepository.save(user);
return key;
}
Dies ist unser build.gradle
buildscript {
ext {
springBootVersion = '1.4.1.RELEASE'
}
repositories {
mavenCentral()
}
dependencies {
classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
}
}
apply plugin: 'java'
apply plugin: 'spring-boot'
jar {
baseName = 'push'
version = '0.0.1-SNAPSHOT'
}
sourceCompatibility = 1.8
targetCompatibility = 1.8
repositories {
mavenCentral()
}
dependencies {
compile("mysql:mysql-connector-java:5.1.34")
compile('org.springframework.boot:spring-boot-starter-data-jpa')
compile('org.thymeleaf:thymeleaf-spring4')
compile('org.springframework.boot:spring-boot-starter-security')
compile('org.springframework.boot:spring-boot-starter-web')
// https://mvnrepository.com/artifact/commons-lang/commons-lang
compile group: 'commons-lang', name: 'commons-lang', version: '2.6'
testCompile('org.springframework.boot:spring-boot-starter-test')
}
Jede Hilfe
ist