我正在使用Spring-Boot-Admin来监控SpringBoot应用程序,该应用程序的执行器端点使用基本身份验证进行保护。所需的凭据将转移到Spring-Boot-Admin(SBA),如documentation中所述。使用spring-boot-admin-server-ui-login
和提供的SecurityConfiguration(基于文档和示例应用程序,请参阅Github Repo代码)来保护SBA本身。
要监控的应用程序和SBA都通过docker部署。
登录到SBA工作正常,我可以看到应用程序状态以及运行状况结果。对于某些内容,我看到了嵌套的登录掩码。当我点击" Logging"或者" JMX"我被重定向到登录掩码:
在浏览器网络选项卡中,我可以看到/jolokia
端点返回401。之后的所有请求似乎都会转发到登录页面。
我有以下问题:
/jolokia
的请求。这是否意味着401直接由SBA返回?它的日志中没有任何相关内容。/jolokia
端点可以正常工作。它甚至可以在我使用SBA使用的相同(代理)URL时使用(例如http://XXX:8090/api/applications/XXX/jolokia/
)。在SBA中执行此操作有何不同?我试图在SBA中找到更多错误详细信息,但到目前为止找不到正确的日志记录选项。它们要么没有任何相关信息,要么包含太多信息(例如Spring Security),而这些信息似乎并不相关。记录完整的响应可能会有所帮助......
编辑:我刚刚意识到,对/jolokia
端点的请求实际上包含的不同cookie(Cookie:JSESSIONID = 4E51B84AE15A6890500F967B23EB92AC)比对工作端点的请求(例如/metrics
)。这很奇怪,但可能解释了/jolokia
端点返回401的原因。现在问题是:为什么它会发送一个不同的cookie?
答案 0 :(得分:0)
我尝试了各种各样的东西,但最终无法解决这个问题。
我最终得到了一个不同的配置:端点(management.security.enabled=false
)根本没有安全性,但是在不同的端口(management.port=8081
)上暴露它们。此管理端点被阻止以完全外部访问系统。
有了这个,SBA表现得很好,应用程序仍然是安全的。最后,它设置得更简单,也很好。