[英]Spring Security config ignored while running on Docker
I dockerized my simple spring boot application and I started by addind a repo, check that the connection works (and it does) and a simple controller for a simple model. Also added a controller for health checks.我对我的简单 spring 启动应用程序进行了 docker 化,我首先添加了一个存储库,检查连接是否有效(确实如此),并为简单的 model 添加了一个简单的 controller。还添加了一个 controller 用于健康检查。 I permit all by a configuration, but everytime i try to access it, it redirects me to localhost:8080/login.
我通过配置允许所有,但每次我尝试访问它时,它都会将我重定向到 localhost:8080/login。 Why is that?
这是为什么?
Also if i run this project as it is (not as a docker image), it works.另外,如果我按原样运行这个项目(而不是 docker 图像),它就可以工作。
My config (i use this because WebSecurityConfigurerAdapter seems to be deprecated):我的配置(我使用它是因为 WebSecurityConfigurerAdapter 似乎已被弃用):
@Configuration
public class SecurityConfig {
@Bean
public SecurityFilterChain filterChain(HttpSecurity http) throws Exception {
http
.authorizeHttpRequests((authz) -> authz
.anyRequest().permitAll()
)
.httpBasic(withDefaults());
return http.build();
}
}
application.yml:应用程序.yml:
spring:
datasource:
url: ${SPRING_DATASOURCE_URL}
username: ${SPRING_DATASOURCE_USERNAME}
password: ${SPRING_DATASOURCE_PASSWORD}
jpa:
hibernate:
ddl-auto: none
docker-compose.yml docker-compose.yml
version: '2'
services:
app:
image: spring-backend
ports:
- "8080:8080"
depends_on:
- db
environment:
- SPRING_DATASOURCE_URL=jdbc:postgresql://db:5432/local_db
- SPRING_DATASOURCE_USERNAME=root
- SPRING_DATASOURCE_PASSWORD=postgres
- SPRING_JPA_HIBERNATE_DDL_AUTO=none
- JAR_FILE=./build/libs/*.jar
db:
image: 'postgres:13.1-alpine'
container_name: local_db
ports:
- "5432:5432"
environment:
- POSTGRES_USER=root
- POSTGRES_PASSWORD=postgres
- POSTGRES_DB=local_db
Dockerfile: Dockerfile:
FROM openjdk:11-jre
ARG JAR_FILE=./build/libs/*.jar
COPY ${JAR_FILE} app.jar
EXPOSE 8080
CMD ["java", "-jar", "app.jar"]
Thanks!谢谢!
You should disable httpBasic.您应该禁用 httpBasic。
httpBasic.withDefaults()
activates spring security.激活 spring 安全。
see:看:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.