标签:网关 APINTO 调用 匿名 API 应用 鉴权
-
问题:
- 公司的业务系统比较多,各种业务系统彼此调用,还有调用了第三方厂商的OpenAPI,现在公司面临着无法监控这些系统的调用关系以及调用量统计。
- 更为关键的是,这些系统的鉴权不统一,每次开辟一条业务线,新上线系统必须与其他系统联调,新加盟的经销商同样面临着这些问题,对研发和运维来说,效率极其低下。
Apinto网关提出应用管理概念,统一管理应用及其生命周期。应用作为业务通讯的发起者角色,始终贯穿着整个调用链,Apinto网关对应用请求的流量进行鉴权认证,并对其所请求的流量进行服务治理,同时还对其监控告警,统计应用调用情况。
Apinto网关中的应用管理完美解决公司管理各业务系统所面临的问题,这也是领导赞美Apinto网关的其中一个方面,那接下来就把最近研究的Apinto的应用管理模块详细介绍一下。
-
配置:
2.1 应用列表
![](https://easy-open-link.feishu.cn/space/api/box/stream/download/asynccode/?code=NDEwZWI2NWJiMTcwOGQyMDY5NTJkYzY2NmQyYzAwZTlfNDJNS2hIWFh2T09LdVNaWXE2bmloQTVabEZIakxUMXVfVG9rZW46Ym94Y25ZaVRZZEtKWXN4NE9OaXJRZmg0SGtiXzE2Nzk1NzczNTE6MTY3OTU4MDk1MV9WNA)
网关通过请求流量中的鉴权信息,来识别是哪个应用,应用必须上线到指定的网关集群且是未禁用状态时才真正生效。
网关对匿名应用和其他应用处理逻辑:
- 当没有应用上线(包括匿名应用),此时不需要鉴权,所有请求被放行
- 当有应用上线,此时匿名应用开启上线,此时可鉴权可不鉴权,若鉴权失败,则走匿名应用逻辑
- 当有应用上线,此时匿名应用开启上线,且给匿名应用配置了访问策略,仅允许匿名应用访问生效范围内的API,其他API请求都需要应用鉴权
- 当有应用上线,此时匿名应用禁用下线,此时必须要做鉴权
2.2 配置带有鉴权信息的test应用并上线
2.3 下线匿名应用,测试test应用调用情况
![](https://easy-open-link.feishu.cn/space/api/box/stream/download/asynccode/?code=ZDdhZjc5ODgwYjg4Zjk2YTg5ODI2MzdhZDI0YjIwZjJfWG51VkV6TWc0U2FXc0FWVjM4ZjNLVmJzMjVyVE5oY3JfVG9rZW46Ym94Y25uTmRBTGlhcWE4cW5UV1lEVTM2aEVPXzE2Nzk1NzczNTE6MTY3OTU4MDk1MV9WNA)
下线匿名应用并且禁用掉,那么不带test这个应用的鉴权,调用testAPI这个API是调不通的报403,看结果:
![](https://easy-open-link.feishu.cn/space/api/box/stream/download/asynccode/?code=Y2RlOWQ1MzJmNmI0ODFjM2U4YTEyMGMwMDg5NjZjNWJfTUlsVE8ydGlBOWs0S1pBRUNMakZHdlhiVmRDd3I3NTVfVG9rZW46Ym94Y256cGhPQlZHaVpXeGdsQ0FmaWFFN01RXzE2Nzk1NzczNTE6MTY3OTU4MDk1MV9WNA)
在请求头加上test应用的鉴权信息,应该可以成功调用,看结果:
![](https://easy-open-link.feishu.cn/space/api/box/stream/download/asynccode/?code=MTc2YWI5Njk5Y2Q5NzgyMzFjMjU2MmU0NmU2ZTk5MDRfMFRmSDlhQ2tUZFlmR2FRWkZ5YkdCY3FCaGlJVVh6SnlfVG9rZW46Ym94Y25ZQmIyWHU2eGdNY3ZQcUQxNHM4UlZlXzE2Nzk1NzczNTE6MTY3OTU4MDk1MV9WNA)
测试结果如预期一般,必须带有鉴权信息且是正确的鉴权才可以调用API。
下回研究应用的监控调用统计,到时候分享给大家。
-
总结:
对于公司来说,必须监控谁安全合规调用了业务API,什么时段的调用量。
好东西必须关注,好了,省得大家去搜,直接提供github地址。
开源地址:https://github.com/eolinker/apinto
标签:网关,
APINTO,
调用,
匿名,
API,
应用,
鉴权
From: https://www.cnblogs.com/kaixinglige/p/17249501.html