1.问题描述
客户线上环境,第三方进行安全检测时候,反馈来一个"Spring"接口未授权访问漏洞。如图:文章来源:https://www.toymoban.com/news/detail-854420.html
2.后端框架
3.问题定位
- 查找网关模块中,关于“swagger-resources”资源路由规则,获取资源处理器,如下图:
- 查看gateway模块中的Swagger资源处理器源码,可见该资源处理器除了响应资源外,并没有其他处理,如下图:
4.解决方法
既然找到了gateway对swagger资源的处理器,直接修改该处理器,添加拦截规则就行了。本示例在添加拦截时候,判断了一下环境参数。只有生产环境才拦截swagger资源访问,开发和测试环境还是允许访问swagger资源,方便调试。再进一步的话,还可以将该参数作为一项配置进行处理,匹配对应的启动环境。具体代码如下:文章来源地址https://www.toymoban.com/news/detail-854420.html
/*
* Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
到了这里,关于解决BladeX微服务Swagger资源未授权访问漏洞的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!