【问题标题】:Service oriented architecture with api gateway and secure IPC具有 api 网关和安全 IPC 的面向服务的架构
【发布时间】:2015-03-31 04:56:25
【问题描述】:

我已经阅读并加深了对 SOA 的理解,我发现这种开发方法很有用。但是有几件事让我感到困惑:

背景:我们正在设计在线金融应用程序,最近我们正处于设计头脑风暴会议的阶段。 (需要进行审计和日志记录)

1 - 如何确保安全的进程间通信?

我的想法:通过防火墙限制对这些 API 的外部访问。所以这些只能由系统内部调用。

2 - 在私有 api (IPC) 和公共 API(向客户端公开,例如移动、Web 和桌面)的上下文中,什么是首选协议 rest 或 soap

我的想法:对于读取,我们可以使用 Rest,对于 ACID 合规事务,我们可以使用soap 作为它提供的点对点安全性。或者对于 IPC,我们也在考虑使用soap 作为其提供的审计机制。

3 - API 网关的作用是什么?特别是涉及进程间通信吗?

我特别对 IPC 感到困惑。我认为所有请求甚至服务调用都将通过 API 网关执行。如果我错了,请详细说明。

4 - 这是否可以在微服务架构中保持一些服务公开和一些私有?如何在逻辑上将它们分开?

无论我有什么研究,我们都可以做到这一点。

5 - SOA 和 Micro SOA 的主要区别和优缺点是什么?

我的观点:Msoa 是 SOA 的延伸。

提前致谢。

任何人都可以绘制图表或提供MSOA架构图与API网关的链接。

APIGEE 是我理解的主要来源,然后谷歌它会详细说明哪些方向不同。

安全是我们最关心的问题。

【问题讨论】:

  • 链接也感谢我的问题

标签: api rest soap soa gateway


【解决方案1】:

1 - 如何确保安全的进程间通信?

在内部,将 IP 和防火墙列入白名单可能是最安全的。如果这些服务可扩展并具有动态 IP,您可能会遇到问题,在这种情况下,共享机密可以工作,但需要在所有服务中实施并受到尊重。 JWT 非常适合这一点(类似于 SAML,但没有那么痛苦),与身份验证微服务一起使用。

外部 - 令牌,OAuth2 取决于您想要经历多少痛苦。

2 - 在私有 api (IPC) 和公共 API(向客户端公开,例如移动、Web 和桌面)的上下文中,什么是首选协议 rest 或 soap

我会使用 REST,SOAP 正在慢慢成为过时的标准,您可以使用 TLS 或 HMAC 签名来保护通信 p2p。

3 - API 网关的作用是什么?特别是涉及到进程间通信吗?

API 网关通常用于向公众公开遗留 API,或通过单一管理接口管理大量内部服务。 API 网关还可以帮助管理客户端的令牌,并为多服务访问提供单个令牌,并从外部接口混淆内部 API。

网关还倾向于提供开发者门户和某种自我注册流程以及请求内容(入站和出站)的控制流。

Tyk.io 是一个开源 API 网关 - 您可以在其主页上查看网关所期望的功能类型

4 - 这是否可以在微服务架构中保持一些服务公开和一些私有?如何在逻辑上将它们分开?

是的,您可以使用 API 网关。只要没有服务间依赖关系。

5 - SOA 和 Micro SOA 的主要区别和优缺点是什么?

我认为一个是另一个的子集,SOA 倾向于与像 ESB 这样的消息传递结构互连,但微型 SOA 会更加专业化,可能不会使用 ESB。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-04
    • 1970-01-01
    • 2016-10-12
    • 2015-05-10
    • 2019-07-04
    相关资源
    最近更新 更多