Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/32.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
公共ASP.NET应用程序安全注意事项_Asp.net_Sql_Security - Fatal编程技术网

公共ASP.NET应用程序安全注意事项

公共ASP.NET应用程序安全注意事项,asp.net,sql,security,Asp.net,Sql,Security,一个非常安全的ASP.NET应用程序必须在我的工作中编写,而不是在互联网上寻找最佳实践,我想知道应该考虑什么,通常应该做什么来确保公共web应用程序的安全 当然,我们已经考虑了用户/通行证的组合,但还需要更深层次的考虑。我说的是应用程序的每一个层次,即 使用URL重写 母版 网站地图 连接池 会话数据 对密码进行编码 使用存储过程而不是直接SQL语句 我将此作为一个社区维基,因为这是一个如此广泛的讨论话题,没有一个答案是正确的。我还要指出,无论如何这不是我的专长,以前的安全锁定是通过非公开应

一个非常安全的ASP.NET应用程序必须在我的工作中编写,而不是在互联网上寻找最佳实践,我想知道应该考虑什么,通常应该做什么来确保公共web应用程序的安全

当然,我们已经考虑了用户/通行证的组合,但还需要更深层次的考虑。我说的是应用程序的每一个层次,即

  • 使用URL重写
  • 母版
  • 网站地图
  • 连接池
  • 会话数据
  • 对密码进行编码
  • 使用存储过程而不是直接SQL语句
我将此作为一个社区维基,因为这是一个如此广泛的讨论话题,没有一个答案是正确的。我还要指出,无论如何这不是我的专长,以前的安全锁定是通过非公开应用程序实现的。

  • 使用表单身份验证,而不是在会话中存储身份验证数据
  • 显然:散列密码。如果您想非常谨慎,请使用SHA1加密而不是md5

您应该将“存储过程”的概念细化为仅使用参数化查询。这将解决你在那里的大部分问题。您还可以限制UI上的字段,删除或编码有害字符,如讨厌的“;”

这比我想你可能意识到的要大。最好的建议是找一个已经知道谁能给你提供建议的人。如果失败,我将从阅读Microsoft文档“”开始,但会收到警告,该文档将运行到919个打印页面。

第一步是浏览互联网。完成后再回来,您将了解更多信息。:-)我在互联网上搜索过,但这里的押韵多于理性。因此,它不仅是一个活跃的社区,而且它充满了真正知道自己在谈论什么的人,这就是为什么我转而问这个问题:)添加了ui内容,不一定需要一篇新的帖子来表达同样的意思。。。