gpt4 book ai didi

SPRING BOOT 使用 Jasig CAS 配置

转载 作者:行者123 更新时间:2023-12-01 21:43:25 26 4
gpt4 key购买 nike

我正在制作一个测试项目,为我们 future 的项目尝试 Spring Boot。

我们正在使用 jasig CAS,我正在尝试使用 spring boot 和嵌入式 tomcat 服务器进行配置。

所以我在 pom.xml 添加 spring-boot-starter-security

之后我尝试配置 WebSecurityConfig -> spring 提供了用 cas 配置的类,例如我需要配置一个入口点:

@Bean
public CasAuthenticationEntryPoint casAuthenticationEntryPoint() {
CasAuthenticationEntryPoint casAuthenticationEntryPoint = new CasAuthenticationEntryPoint();
casAuthenticationEntryPoint.setLoginUrl("https://localhost:9443/cas/login");
casAuthenticationEntryPoint.setServiceProperties(serviceProperties());
return casAuthenticationEntryPoint;
}

这是第一个问题:应用程序无法识别 org.springframework.security.cas.web.CasAuthenticationEntryPoint 类。

该类似乎没有通过 spring-boot-starter-security 导入。

最佳实践是什么?我是否必须像以前一样在我的 pom 中手动添加依赖项?

示例:

<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-cas</artifactId>
<version>${spring-security.version}</version>
<type>jar</type>
<scope>compile</scope>
</dependency>

如果是这样,我需要使用哪个版本来配合启动版本包并避免冲突?

第二点是如何配置嵌入式tomcat以启用带证书的ssl?

这是我的 CAS 经典 server.xml 配置:

Connector emptySessionPath="true" port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol" SSLEnabled="true" URIEncoding="UTF-8"
maxThreads="150" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS"
keystoreFile="C:\***\***\***\.keystore" keystorePass="***"
truststoreFile="C:\Program Files\Java\jdk1.7.0_67\jre\lib\security\cacerts"
compression="on"
compressionMinSize="2048"
noCompressionUserAgents="gozilla, traviata"
compressableMimeType="text/html,text/xml,text/plain,text/css,text/javascript"/>

是否可以使用嵌入式 tomcat 配置 keystorefile/truststorefile ?

谢谢

最佳答案

假设您正在使用spring-boot-starter-parent作为您项目的父项目(或将其导入您自己的 <dependencyManagement> 部分),您不需要声明 spring-security-cas 的版本依赖项,因为 Boot 已经为其提供了依赖项管理。你可以这样做:

<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-cas</artifactId>
</dependency>

SSL 配置为 covered in the reference docs 。您只需要指定一些属性来配置 keystore 等。例如:

server.port = 8443
server.ssl.key-store = keystore.jks
server.ssl.key-store-password = secret
server.ssl.key-password = another-secret

关于SPRING BOOT 使用 Jasig CAS 配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26161118/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com