开发者社区> 问答> 正文

关于springcloud的网关配置,是否存在绕过的可能! :报错

问题:

    最近在学springcloud,由于是本地测试,所以部署的服务都在本地 并且服务都能直接访问到,简单的说,就是有一个服务a,它的请求路径为 /api/test,该服务可以直接调用,现在我添加了一个网关,可以通过网关转发到这个服务,但这个服务仍能直接调用。生产环境当然不会有这个问题,一般只有网关对外暴露或由nginx转发都不用暴露,但是本地调试这个问题算正常吗?或者怎么配置可以避免?

展开
收起
kun坤 2020-06-06 18:29:48 1211 0
1 条回答
写回答
取消 提交回答
  • 可以在网关层转发的时候增加一个header,代表他是通过网关层转发的,服务层统一增加拦截器判断是否存在该header。其实网关层一般会拿来做鉴权,鉴权成功会在header中增加jwt,实现服务层的通行证,跟我签名所述的异曲同工。

    ######感谢回答######一般通过网管转发的服务器都是走内网的。你的服务外网端口不会暴露出去。你要是把自己的服务都暴露出去了,那肯定是拦不了直接调用。加鉴权也只是拦截请求是否合法。唯一的做法就是服务不暴露公网。######

    生产环境可将所有微服务不暴露出去,只需要暴露网关服务就行了,网关调用其他服务都是走内网,懂的话敲个1

    2020-06-06 18:29:54
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
云栖社区特邀专家徐雷Java Spring Boot开发实战系列课程(第20讲):经典面试题与阿里等名企内部招聘求职面试技巧 立即下载
微服务架构模式与原理Spring Cloud开发实战 立即下载
阿里特邀专家徐雷Java Spring Boot开发实战系列课程(第18讲):制作Java Docker镜像与推送到DockerHub和阿里云Docker仓库 立即下载