【问题标题】:hosted wcf service accessing external service托管 wcf 服务访问外部服务
【发布时间】:2015-06-15 08:50:20
【问题描述】:

我有一个名为“ServiceA”的 wcf 服务,它托管在 azure cloud service 中。 现在,我又多了一项服务,只能在专用网络中访问。

是否可以通过在配置中的任意位置添加网络 IP 地址来使“ServiceA”使用存在于专用网络中的“ServiceB”?

【问题讨论】:

  • 如果“ServiceB”可以通过 IP 地址使用,这不是公共服务吗?
  • 我唯一知道的是,外网无法访问服务。所以,我只是在为此寻找不同的选择
  • 查看我的回答希望对您有所帮助...

标签: c# wcf azure azure-cloud-services


【解决方案1】:

是的,您可以使用 Azure ServiceBus Relay 来做到这一点。使用服务总线中继,开始通过出站端口公开您的私有服务,所有需要访问您的私有服务(服务 B)的各方都可以来到 ServiceBus Relay,后者又知道如何访问您的私有服务。查看 Azure ServiceBus 中继。

但你最终可能会得到一段代码,通过中继暴露你的私人服务,这是一个非常小的代码。

参考 - https://azure.microsoft.com/en-in/documentation/articles/service-bus-dotnet-how-to-use-relay/

【讨论】:

    【解决方案2】:

    通过 IP 限制尝试此解决方案,这样您就可以允许已知 IP 并且可以停止其他 IP。

    https://www.stokia.com/support/misc/web-config-ip-address-restriction.aspx

    【讨论】:

      【解决方案3】:

      您可以在 ServiceA 上的 NetTcp 端点上公开双工合同,并让 ServiceB 启动到 ServiceA 的连接。然后 ServiceA 可以使用回调合约调用 ServiceB。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-06-30
        • 1970-01-01
        • 1970-01-01
        • 2011-09-18
        相关资源
        最近更新 更多