Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何通过身份验证将HTML表单提交到另一个域_Html_Forms_Authentication - Fatal编程技术网

如何通过身份验证将HTML表单提交到另一个域

如何通过身份验证将HTML表单提交到另一个域,html,forms,authentication,Html,Forms,Authentication,我在域a上有一个网站,它有一个带有html表单的页面,用户可以在其中输入字符串,然后提交给域B 表单当前包含一个隐藏的输入字段,该字段的名称/值是域B用于“身份验证”/标识域a的 现在,我主要是一名C#编码员,拥有极少的网络经验,即使我知道这样做也不是一种安全的方式 域a上的表单安全提交到域B的最佳方式是什么 我考虑过的一些方法: 让域B通过域名或IP标识域A。我想这比一个隐藏的输入字段要好,但域名和IP可能会被欺骗,对吗 除了隐藏字段外,还通过其他方法将域A通过身份验证凭据(例如用户/通过)传

我在域a上有一个网站,它有一个带有html表单的页面,用户可以在其中输入字符串,然后提交给域B

表单当前包含一个隐藏的输入字段,该字段的名称/值是域B用于“身份验证”/标识域a的

现在,我主要是一名C#编码员,拥有极少的网络经验,即使我知道这样做也不是一种安全的方式

域a上的表单安全提交到域B的最佳方式是什么

我考虑过的一些方法:

让域B通过域名或IP标识域A。我想这比一个隐藏的输入字段要好,但域名和IP可能会被欺骗,对吗

除了隐藏字段外,还通过其他方法将域A通过身份验证凭据(例如用户/通过)传递到域B。不知道怎么做

编辑


另一种可能性:创建私钥/公钥。让域A将私钥传递给域B,域B可能通过HTTPS使用公钥进行验证。不确定域A如何在不在HTML中公开私钥的情况下传递私钥。想法?

我过去也做过类似的事情。大多数人都不赞成这种方法,但它对我起了作用:

在两个域上定义匹配的用户。给他们两个相同的密码(您可能应该将其设置为永不过期)


然后,当您以此用户身份在域A中运行应用程序时,它将使用直通式身份验证在域B上进行身份验证。您只需确保用户帐户在两个域上都有正确的perm。

根据值是什么以及如何生成,带有值以验证用户身份的隐藏输入可以是一种安全的方法。您可以让域A向域B发出AJAX调用,请求必须随表单一起提交的令牌

域B只应接受此令牌一次,并且在一定时间后也应过期

最后,您还可以为用户发送一个标识符。应该以某种方式对其进行加密以进行传输。我建议要么


备选案文2:使用;)

域A实际上不在我的控制范围内,因此除非所有者愿意与我合作,否则这不是一个选项。但是域B如何确定AJAX调用来自允许提交的人?它是否来自允许提交的人并不重要。令牌用于防止重播攻击。域A和域B可以有一个共享的秘密,该秘密随最终请求一起发送。但是,可以安全地假设任何具有有效登录凭据的表单提交都是经过授权的。