SpringCloud Alibaba微服务实战二十六 - 禁止直接访问后端服务

本文探讨如何防止在SpringCloud架构中请求绕过网关直接访问后端服务。提出三种解决方案,重点讲解应用层拦截,通过在网关添加特定Header并在后端服务设置拦截器进行验证。通过创建公共Starter模块,实现后端服务引用该模块即可自动拦截非网关请求。
摘要由CSDN通过智能技术生成

前言

使用SpringCloud架构后我们希望所有的请求都需要经过网关才能访问,在不作任何处理的情况下我们是可以绕过网关直接访问后端服务的。如下,我们绕过网关直接访问后端服务也是可以获取到数据的。

那我们今天的议题就是 如何防止请求绕过网关直接访问后端服务?

解决方案

我觉得防止绕过网关直接请求后端服务的解决方案主要有三种:

  • 使用Kubernetes部署

    在使用Kubernetes部署SpringCloud架构时我们给网关的Service配置NodePort,其他后端服务的Service使用ClusterIp,这样在集群外就只能访问到网关了。

  • 网络隔离

    后端普通服务都部署在内网,通过防火墙策略限制只允许网关应用访问后端服务。

  • 应用层拦截

    请求后端服务时通过拦截器校验请求是否来自网关,如果不来自网关则提示不允许访问。

这里我们着重关注在应用层拦截这种解决方案。

实现思路

实现思路其实也很简单,在请求经过网

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

飘渺Jam

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值