合作伙伴 API 可能要求请求来自已知的源 IP,而调用它的 Heroku 应用却运行在不断变化的 dynos 上。现有的 Proximo 集成通过一个分配的静态地址提供出站通路。

dyno’s API client → Proximo gateway → partner API
                         assigned source IP

应当放进合作伙伴源白名单的,是这个分配到的出口地址。PROXIMO_URL 标识应用进入该通路所用的代理端点和凭据;它不是应用的公网网站 URL。

把这条通路应用到发起调用的进程

Web 进程和后台 worker 可能各自发起 API 请求。请通过各自支持的代理集成来配置每一个需要出站的消费者。给一个进程配好路由,并不等于其他所有进程都会走这个网关。

对于 JVM 应用,请使用合适的原生 HTTP 或 SOCKS 客户端配置,以及提供商支持的身份验证方式。不要因为某个为其他运行时编写的 wrapper 示例,就推断 Java 也兼容。

让入站请求继续走应用自身的路由

Proximo 的 Heroku 文档明确说明,它不提供对应用的入站访问。访问 Web 应用的客户端仍然使用其配置好的 Heroku 主机名和路由。

用应用 URL 来检查入站 Web 访问。要核查出站源地址,请使用合作伙伴收到的请求所提供的证据:检查出站源地址。指望静态代理 IP 来服务应用,等于把这两个方向合并成出站服务并不具备的功能。

相关文章