大家好,我是君哥。
最近 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 的设计和管理中,可以作为一个参考。
感谢阅读,如果对你有帮助,请点赞和在看。欢迎加我微信:zhujinjun86。
号内回复 seata,下载《阿里分布式中间件Seata从入门到精通》
号内回复 beijing,下载我总结的北京上百家知名科技公司
号内回复 aqs,下载《40张图精通Java AQS》
文章转载自君哥聊技术,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




