Java Spring引导:禁用特定URL的客户端身份验证
我的Java Spring引导:禁用特定URL的客户端身份验证,java,spring,spring-boot,Java,Spring,Spring Boot,我的应用程序.yml中有以下配置 server: #address: port: 8443 sessionTimeout: 30 ssl: client-auth: need key-store: keyStore.jks key-store-password: 12345 key-password: datacert protocol: TLS trust-store: truststore.jks trust-stor
应用程序.yml中有以下配置
server:
#address:
port: 8443
sessionTimeout: 30
ssl:
client-auth: need
key-store: keyStore.jks
key-store-password: 12345
key-password: datacert
protocol: TLS
trust-store: truststore.jks
trust-store-password: 12345
由于我有client-auth:need
,我的应用程序正在提示为所有URL提供证书,对于某些特定的URL,比如/info
或\health
URL,我是否可以绕过client-auth
。
也不建议将URL与不安全页面混合使用
如果您只需要确保某些URL的安全,请实现自定义身份验证,因为默认情况下,每个请求都会发生SSL握手
您可以参考以下讨论:
例如,请求只有在经过身份验证后才能到达服务器
您可以尝试使用过滤器创建和捕获请求,但我怀疑您是否能够在web服务器对请求进行身份验证之前在服务器上获取请求
e、 g.尝试添加java筛选器并捕获所需的URL以筛选安全和非安全的URL。(过滤器可在web.xml下配置或作为注释配置)。另一个选择是尝试Spring安全过滤器链代理。不,您不能。在接收和解密包含URL的流之前,在TLS握手级别评估并完成客户端身份验证。最好将它设置为“想要”,然后检查它是否确实发生在需要它的端点中。(提示:spring security)