项目场景:
最近项目要引入服务健康检查机制,所以在每个服务引入了spring-boot-starter-actuator。
问题描述:
发布到测试环境以后,其他服务都正常使用,但是有一个服务异常,除了/actuator/health获取服务健康信息接口外,其他接口都是401错误,于是排查原因。
问题如下:actuator相关接口正常使用
其他所有业务接口401错误
原因分析:
排查发现,异常的服务里,除了actuator外,原先存在一个security依赖,排除了actuator后正常,但是加入actuator后吗,所有接口就401所以推断是security在引入了actuator后触发了安全校验机制,导致所有接口都要通过校验了依赖如下
org.springframework.security.oauth
spring-security-oauth2
org.springframework.boot
spring-boot-starter-actuator
解决方案:
添加一个Security配置类,放开所有接口的校验
至此,401问题解决,//TODO-linzp由于本身对Security框架并不熟悉,所以待到后续深入使用了解后,再来细讨这个问题的底层原因
文章为作者独立观点,不代表 股票程序化软件自动交易接口观点