Spring:使用Spring Security配置执行器端点的安全性

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring:使用Spring Security配置执行器端点的安全性相关的知识,希望对你有一定的参考价值。

是否可以通过Spring Security为Spring应用程序的执行器端点配置安全性?

根据https://github.com/spring-projects/spring-boot/issues/8646,我需要在我的自定义Spring Security配置中执行此操作。

但是假设我在我的应用程序中有/info的自定义请求映射(在端口8080上)以及在端口8081上启用的执行器信息端点。如何在Spring Security中区分这两者?

答案

是的,它可能但不是特别明显。在WebSecurityConfigurerAdapter的扩展中,您可以注入执行器端点的集合:

@Inject
private List<AbstractEndpointMvcAdapter<? extends Endpoint<?>>> actuatorEndpoints;

然后在你的configureHttpSecurity(HttpSecurity http)覆盖中,你可以使用每个执行器端点的getPath()成员传递给.requestMatchers(forPortAndPath(managementPort, actuatorPath))参数上可用的http构建器。

另一答案

我刚刚发现Spring Boot 2明确解决了这个问题。见https://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/#production-ready-endpoints-security

以上是关于Spring:使用Spring Security配置执行器端点的安全性的主要内容,如果未能解决你的问题,请参考以下文章

Spring Security + Auth LDAP:BindRequest 和 UnbindRequest?

Spring Security 4 和 JSF 2 集成

spring security 3.2.0 csrf 令牌在 freemarker 模板中不起作用

Spring Framework,Spring Security - 可以在没有 Spring Framework 的情况下使用 Spring Security?

仅使用 Spring-Security(或)Spring 进行授权

使用 spring-session 和 spring-cloud-security 时,OAuth2ClientContext (spring-security-oauth2) 不会保留在 Redis