我想做得更好,我希望向您介绍一些好处,并将其添加到Web应用程序中做得最差。
我做了很多ASP.NET应用程序,特别是在CRM应用程序中运行。在我们收到电子邮件之前,我们会忘记这件事,并且我们会忘记这件事:)
这个问题适用于商业免费的网络应用程序。以下所有想法,我将自由分享我的源代码。
目前我只是有一些想法并实施了其他想法,例如:
alt text http://www.balexandre.com/temp/WebApp_DebugInfo.png
alt text http://www.balexandre.com/temp/WebApp_errorMsg.png
我使用jQuery和Web Service创建了一个简单的链接,它将显示当前版本的Web应用程序,如果是最新的。
昨天我从ELMAH博客阅读了Scotts,我会尝试设置这个,以便收到一封特殊地址的电子邮件,以便改进并修复任何错误可能会发生......
你们有什么建议?什么可以考虑作为部署Web应用程序的“标准”...
答案 0 :(得分:1)
我喜欢你正在做的一切,除了通过querystring参数显示所有查询信息。我建议只在dev上以调试模式提供该功能。服务器或那种性质的东西。否则可能会带来很大的安全风险。
我也在你发布的查询中看到(从底部排第三)到
结尾where <some field> = 582
使用参数化查询而不是字符串连接是个好主意。它让你开放一系列令人讨厌的问题,比如性能下降和sql注入攻击。如果您使用参数化查询,那将会消失。
希望我为你的“标准”增加了一些价值。
祝你好运。
答案 1 :(得分:0)
“如果您将&amp; debug = y添加到查询字符串中,我将显示一个调试窗口,其中包含所有名为”
的查询和过程现在,通常我是默默无闻地批评安全的人,但这是一个非常糟糕的主意。没有理由像这样彻底暴露你的实现。如果在生产服务器上启用了此调试选项,则最多应该记录到内部文件。
与“有用的”回溯错误消息相同。此信息仅限于某些原因。
即使版本链接也可以被视为漏洞。参见例如this Wordpress artice建议不发布您正在使用的Wordpress版本,原因是过去的漏洞众多,以及人们升级速度非常慢。