【发布时间】:2020-12-05 17:49:59
【问题描述】:
我正在关注该教程第三部分的link 中的弹簧安全教程。我必须使用 redis 将会话信息传递给资源后端。
这是我的 applicaiton.yml 文件:
server:
port: 9000
security:
sessions: NEVER
spring:
session:
store-type: redis
redis:
host: localhost
port: 6379
logging:
level:
org.springframework:
security: DEBUG
session: TRACE
另外,我使用 HeaderHttpSessionStrategy bean 作为会话策略
@Bean
HeaderHttpSessionStrategy sessionStrategy() {
return new HeaderHttpSessionStrategy();
}
我的pom找不到相关的类声明给我
包 org.springframework.session.web.http 不存在
上面的错误这里是我的 pom.xml 文件。
<properties>
<java.version>14</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
我是 spring 和 spring-security 世界的新手。有什么建议可以解决这个问题吗?
编辑:
在 pom 中添加新的依赖项后
<dependency>
<groupId>org.springframework.session</groupId>
<artifactId>spring-session</artifactId>
<version>1.3.5.RELEASE</version>
</dependency>
我解决了上述问题,但这次给我带来了新的问题:
无法自动配置会话存储库,请检查您的配置(会话存储类型为“redis”
我在 application.yml 上的 redis 配置在上面。我在docker上使用redis。我的 docker yml 是:
redis:
image: redis
ports:
- "6379:6379"
【问题讨论】:
-
你做了什么来尝试找到包含该包的 maven 工件?
-
你好我尝试添加
这个依赖之后我可以添加相关的类,但这一次给我redis的配置错误。org.springframework.session spring-session 1.3.5.RELEASE -
那就问一个关于redis问题的问题,如果不能解决。听起来好像您已经解决了这个问题。
标签: java session spring-security redis