技术解析

有没有这种接口中转的服务?
0
2021-06-10 21:05:44
idczone
很多时候开发客户端抗投诉服务器,需要用到一些付费接口,key 什么的不方便存在客户端,要是有一个中转服务就好了,接口请求直接到中转那里,中转把 key 添加上去。

所以有没有这种服务呢?无开发量那种。
短链

短链是公开的,请求一次就知道完整网址,和透明的没什么区别

key 、token 什么的,也不方便存在第三方吧……

有,API 网关就是干这活的,云服务厂商都有,按量付费,请求+流量分别计费

云函数 + API 网关

很奇怪。。为什么你不自己部署一个 nginx 转发

nginx 转发不做开发工作的话能修改请求吗?

其实没差别啊。
如果用户侧持有某个 KEY,可以导致其访问某个业务。
现在你通过中转服务隐藏 KEY,用户侧直接访问这个中转服务,一样可以访问其业务。
本质上没多大区别呀。
鉴定可信终端不是依靠信息不对称实现的。

然后发现这个中转服务会被人乱调,所以在中转服务上也加了一套 key 做验证。过了几天又有人问,有没有办法给这类中转服务器做一个中转?

自己写一个中转,简简单单的事情,把 key 存在别人那儿,始终不安全

现写一个不就几分钟的事吗

自己随便写一个 server 包装下就完事了




对不熟悉服务端的人并不是简简单单,需要开发,部署服务,选择服务器,服务器安全,测试每个国家连接速度

有意义的,通常这个 apikey 都是外部服务商给的,如果因为外部原因要更换就很麻烦。用上 api 网关之后客户端和网关间的身份验证就完全由内部掌控了,同时像什么调用频率限制也会更容易实现。

中转那边不是也得做鉴权……

那这个需求的本质其实是做一层隔离,而隔离的目的并不是为了安全,而是为了解耦。
解耦,这样的设计是具有积极意义的,并且在实际生产环境中也很常见。
安全,如果非要说这样兜一圈安全性有什么提升,应该就是自己做一些额外的校验工作,例如频率限制、限制来源、负载均衡,添加原后端请求不支持的安全参数等,但这样就不是一个简单的服务的包装了,这更接近于业务逻辑。涉及业务层一般就不太会有楼主希望的那种第三方或者比较具有通用性的统一包装服务了。

那你这个需求应该是要加钱。简简单单+不需要开发+不需要部署+不需要选择+安全+速度 OK = 加钱

加钱没问题,大概看了 Google 和 Amazon 的 API Gateway 好像可以,但是还没用明白

用个临时域名,限制主机头访问

openresty 搞一搞

没听说过通用的,一般都是公司内某个中台服务团队来干这种事吧。
对外提供一个只能做有限功能的接口,对内封装第三方厂商的鉴权及业务逻辑。
如果要客户端直通第三方服务的话,类似的东西我只听过阿里云的 STS,临时下发一个 Token 给客户端。

API 网关可以自定义 path,header,query 。如果后端 key 是固定的,在 API 网关网页控制台就能配置好转发了,如果 key 是根据参数计算的,那就要用上云函数了,避免不了代码。

对对,我需要的就是 API 网关,而且亚马逊有相关 SDK,应该可以解决一部分安全问题

有的呀,api 网关 其中一个作用就是 整合不同接口的差异化

Nginx 反向代理就行

数据地带为您的网站提供全球顶级IDC资源
在线咨询
专属客服