Forms 如何安全地提供web表单并通过电子邮件发送回复?

Forms 如何安全地提供web表单并通过电子邮件发送回复?,forms,security,Forms,Security,我正在尝试学习如何保护web表单。举一个简单的例子,一个联系方式,姓名,电话,电子邮件。我发现: 但我不知道这是不是正确的方法。它不是共享主机,如果有关系的话,我可以完全访问所有内容。目前我与IIS 6和Windows 2000绑定,因此我可能需要使用asp.net 2.0,但如有必要,可以使用其他语言(可以在IIS中运行) 我希望能够填写表格,并让它通过电子邮件/将表格发送到适当的下一步(我不知道这是什么。) 另外,我是否使用端口443作为表单的端口 编辑:我很清楚。很抱歉我需要整个过程的安

我正在尝试学习如何保护web表单。举一个简单的例子,一个联系方式,姓名,电话,电子邮件。我发现:

但我不知道这是不是正确的方法。它不是共享主机,如果有关系的话,我可以完全访问所有内容。目前我与IIS 6和Windows 2000绑定,因此我可能需要使用asp.net 2.0,但如有必要,可以使用其他语言(可以在IIS中运行)

我希望能够填写表格,并让它通过电子邮件/将表格发送到适当的下一步(我不知道这是什么。)

另外,我是否使用端口443作为表单的端口

编辑:我很清楚。很抱歉我需要整个过程的安全。这不仅仅是安全地获取初始表单。我需要表单中的数据安全地输入

编辑:我还不够清楚。一旦我从用户那里得到了数据,我将通过443和SSL获得这些数据,我希望这些数据通过电子邮件通过互联网发送给我。这样做安全吗?或者,最好是使用我的SSL,通过它获取数据,然后让查看该信息的用户(秘书,无论什么)使用同一个SSL套接字,只是使用一个查看应用程序


感谢您的帮助。谢谢。

您需要购买SSL证书并将IIS配置为使用该证书,并且仅通过SSL协议提供页面服务。这意味着从用户浏览器到服务器的所有到该站点的连接都是安全的。

您需要购买SSL证书,并将IIS配置为使用该证书,并且仅通过SSL协议为页面提供服务。这将意味着从用户浏览器到服务器的所有到该站点的连接都是安全的。

SSL证书适用于您。您不一定需要购买证书,因为它们可以“自签名”,尽管您的用户会看到其中一个窗口弹出,告诉他们证书无效。但是,即使证书无效,它仍将提供与签名证书相同的加密


如果您使用https协议,则客户端web浏览器将自动尝试连接到端口443处的web服务器。

SSL证书适用于您。您不一定需要购买证书,因为它们可以“自签名”,尽管您的用户会看到其中一个窗口弹出,告诉他们证书无效。但是,即使证书无效,它仍将提供与签名证书相同的加密


如果您使用https协议,则客户端web浏览器将自动尝试连接到端口443处的web服务器。

您的站点需要SSL证书。为了确保数据安全,请确保表单操作为https://

您的站点需要SSL证书。就确保数据安全而言,确保表单操作为https://

确保表单安全始终是一项危险的工作,但您需要做的第一件事是添加验证码组件,通过这种方式,漏洞扫描程序或机器人程序无法使用表单来尝试在代码或服务器中查找任何可能的漏洞。这样,您就不会在接收者邮件文件夹中收到来自表单的数千封电子邮件

在对输入数据执行任何操作之前,请尝试对其进行清理,这将阻止SQL注入、XSS和其他操作。有些语言(如ASP.NET)仅在默认配置下执行此任务,但如果必须对其进行编码,则此任务并不困难。有更多的技术,但从这两个开始,95%的工作将完成


如果您需要任何其他建议,请告诉我。

保护表单始终是一项危险的工作,但您需要做的第一件事是添加验证码组件,这样,漏洞扫描程序或机器人程序就无法使用表单来尝试查找代码或服务器中任何可能的漏洞。这样,您就不会在接收者邮件文件夹中收到来自表单的数千封电子邮件

在对输入数据执行任何操作之前,请尝试对其进行清理,这将阻止SQL注入、XSS和其他操作。有些语言(如ASP.NET)仅在默认配置下执行此任务,但如果必须对其进行编码,则此任务并不困难。有更多的技术,但从这两个开始,95%的工作将完成


如果您需要任何其他建议,请告诉我。

如果您已经为页面设置了SSL,那么这就是完成工作中最重要的部分。用户可以连接端口443,他们输入的所有数据都将是安全的

然而,大多数人没有回答的是通过电子邮件进行的数据传输,其中大部分传输无法保证安全-[我不知道这个引用有多可信,但值得一读:]因此您必须自己使用某种形式的加密来加密数据。可能是公钥/私钥加密-可能是RSA或类似加密。使用公钥加密数据,将其附加到电子邮件并将其发送出去。然后,电子邮件接收者使用私钥解密数据

如果您正在使用表单的mailto功能,那么您可能需要进行一些编码,因此是时候把手弄脏了。据我所知[如果我错了,请有人纠正我],IIS没有任何能力通过电子邮件加密数据-主要是因为接收电子邮件的程序可能无法解密数据,这意味着您需要指定加密算法、任何密钥、附件方法等

有很多库可以用来处理这个问题。您没有提到是否自己编程,也没有暗示编程语言,但由于您似乎使用的是Microsoft技术,我将向您介绍Microsoft的网站作为参考:

霍普夫