我工作的公司保持着成功的SaaS产品,这些产品多年来“有机地”增长了。我们计划用一系列新产品扩展产品线,这些新产品将与现有产品共享数据。为此,我们希望将业务逻辑整合到一个地方:Web服务层。WS层将由以下人员使用:
- 网络应用
- 导入数据的工具
- 与其他客户端软件集成的工具(本身不是API)
我们还希望创建一个可供我们的客户使用的API,这些客户可以使用该API创建自己的集成。我们正在努力解决以下问题:
内部API(又称WS层)与外部API是否应在同一方面,并具有安全性和权限设置以控制谁可以完成操作,还是应该是两个单独的应用程序,其中外部API仅调用内部API像其他应用程序一样?到目前为止,在我们的辩论中看来,将它们分开可能更安全,但会增加开销。
其他人在类似情况下做了什么?