English 中文(简体)
我如何能够安全地将数据传送和接收到/从外部服务处,使用表格职位?
原标题:How can I securely pass and receive data to/from an external service using form posts?

我们需要从数据上向为我们提供服务的伙伴发送信息,我们希望通过表格上的信息来保持简洁。

我们将使用 JavaScript 等在服务提供商网站上将表格数据( id) 张贴到表格中。 服务需要将这个 ID 显示一些相关数据给用户 。 我们将这个张贴到其服务器上的表格中, 然后将结果显示为弹出 。 如果用户对相关数据满意的话, 他们将会在弹出( 服务供应商服务器上) 的表格中提交, 服务供应商会将发送到服务器上的控制器 。

  1. User clicks link on our website
  2. This posts data to the service providers site and displays content from service providers site in a popup/iframe
  3. User checks the data displayed in popup and sees they are happy with it
  4. The user hits submit in the popup (service provider updates something on their site)
  5. Service provider submits form data to our controller (we update something on our site)

我们需要确保只有我们的服务器 才能张贴到他们的网页上 只有他们才能发布到我们的网页上

我们正在使用MVC3, 他们正在使用他们选择的网络技术。

任何关于最简单、最快速和最安全的方法的建议。 显然,需要防止重播攻击,确保只有他们能向我们发布。

最佳回答

We want to do this via a form post to keep things simple. We will post to a web page on their server, they will do some processing and post the data back to a controller action on our server.

Ah no, 这是不可能的。 如果您有一个 HTML < code\\ lt; form> , 其动作指向某些 URL (不管该 URL 位于您的服务器上还是第三方服务器上), 当提交此表时, 浏览器会 POPST 到此 URL 并重定向到它。 这意味着, 当你能够将请求发送到远程源时, 它可能会查询您域的某些控制器动作时, 您将无法在浏览器中显示执行此控制器动作的结果, 因为浏览器将显示执行此远程 URL 的结果 。

因此,一种技术是将 HTML POST > 交给您的控制器动作,该动作本身会将请求委托给远程服务(使用