Nacos 3.0 的这个设计,值得我们学习

开发 前端
最近 Nacos 发布了第一个 3.0 版本 Nacos 3.0-ALPHA,这个版本主要改进点在于安全性和标准化的提升。

大家好,我是君哥。

最近 Nacos 发布了第一个 3.0 版本 Nacos 3.0-ALPHA,这个版本主要改进点在于安全性和标准化的提升。

API 接口的调用方可能有很多类型,我们看下图,业务系统1 中服务 A 的一个 API 接口被多个系统和服务调用:

我们日常接触的系统中,一个 API 可能会有下列的调用情况:

  • 被同一个系统内的其他服务调用。
  • 被不同系统的服务调用。
  • 被公司内部的运维系统调用。
  • 被控制台通过命令调用。
  • 被可视化页面调用。
  • 被公司外部的三方系统调用。

系统内部、系统间、运维控制台、可视化页面、三方调用这个接口时,如果使用相同的认证机制和接口文档,显然是不合适的,有很大的安全隐患。

在 Nacos 3.0 之前,Nacos 把 API 分为两类,一类是系统间调用的,一类是供运维人员管理使用的。这样分类比较粗,无法满足安全认证的需求。

在 Nacos 3.0-ALPHA 版本中,对 API 进行了更加精细的分类,主要分为了四类,参考下图:

这种 API 设计方式变得更加灵活,可以满足不用用户和场景的需求。

基于这种 API 划分方式,Nacos 3.0-ALPHA 版本提出了不同的认证方式:

  • 对于集群内部访问和运维人员访问的 API,默认使用 ServerIdentity 做身份验证。
  • 对于 Nacos 控制台 UI 访问的 API,默认使用用户名和密码进行身份和权限认证。
  • 对于客户端和应用程序访问的 API,默认不开启安全认证。

这样对 API 的设计,不仅可以满足 API 调用的安全性要求,对易用性也有了很大提升。在我们平时 API 的设计和管理中,可以作为一个参考。

责任编辑:姜华 来源: 君哥聊技术
相关推荐

2024-04-07 10:05:54

前端开源

2016-08-29 22:13:52

2022-11-28 08:02:17

DNSIP计算机

2015-10-23 13:56:00

华为ICT

2013-08-05 16:51:31

创新科技关注

2022-08-26 09:44:52

加密货币比特币区块链

2011-10-09 10:43:00

2013-07-04 10:09:40

开源开发板

2014-12-30 09:30:57

.net语言选择

2013-07-04 10:16:27

开源硬件开发板

2021-12-21 10:22:24

Web3.0堆栈细分领域

2021-05-20 10:42:59

PythonPython 3.0编程语言

2020-12-09 11:52:28

Python字符串代码

2020-10-28 08:26:23

Vue源码开发

2018-02-26 18:54:37

2021-05-13 09:21:06

Docker书籍开发

2022-02-10 07:37:09

分库分表存储

2023-06-09 15:54:27

2017-03-07 15:43:28

编程语言函数数据结构

2018-12-03 17:15:47

JavaScripthtml前端
点赞
收藏

51CTO技术栈公众号