1

许多第三方服务提供商允许您在他们的系统中发生事件时为您的系统配置“Webhook”(又名 HTTP POST)。服务提供商将使用各种身份验证方法(HMAC、OAuth、TLS 等)。

例如,Company1 将 ServiceABC 配置为在服务提供者发生事件时(例如交易批准)向http://company1.com/eventlistener发送通知:

 ServiceABC.com -> HTTP POST -> http://company1.com/eventlistener

http://company1.com/eventlistener在 DMZ 中。它将验证消息并酌情转发到后端服务。

 [DMZ] http://company1.com/eventlistener -> | [Behind] http://backendUrl/service

在此示例中,假设服务提供商不支持 OAuth。使用自定义标头方案执行身份验证。

在这种情况下可以/应该使用 WSO2 API 管理器吗?

如果不是 API Manager,可以使用 WSO2 ESB 吗?

4

1 回答 1

0

API Manager 是这里的正确解决方案。API Manager 有 5 个主要组件,网关、发布者、存储、密钥管理器和流量管理器。在基本的分布式设置中,这 5 个组件可以在 5 台机器上运行。API Publisher 将 API 发布到网关(API 的真实工件在这里)和存储(API 的虚拟表示,可以订阅,在这里)。网关将您的 API 暴露给外部。所以它驻留在 DMZ 中。API Store 也可以根据您的需要在 DMZ 上。Keymanager 处理身份验证(例如 OAuth2)并且应该在 MZ 中。流量管理器用于请求限制。

后端身份验证可以通过简单的定制来完成。

您可以在此处找到集群文档。APIM 部署模式在这里

希望这可以帮助。

于 2016-09-23T14:22:11.623 回答