其他ASP.NET安全最佳实践是什么?
到目前为止已确定列于此处:
在将应用程序移至生产环境时,始终生成新的加密密钥和管理员密码.
切勿直接或以加密形式存储密码.始终存储单向散列密码.
始终将连接字符串存储在Web.config的标记中,并使用受保护的配置提供程序(RSA或DPAPI)在配置部分中对其进行加密.见这里的例子
使用具有最小权限的用户ID连接到SQL Server或您正在使用的数据库.例如,如果您只是从某个应用程序模块执行存储过程,那么您必须创建一个只具有执行权限的用户ID.
如果要在页面上使用基于角色的安全性,请使用PrincipalPermission.
[PrincipalPermission(SecurityAction.Demand, Role="Admin")]
public class AdminOnlyPage : BasePageClass
{
// ...
}始终使用参数来防止SQL查询中的SQL 注入.
始终在Web配置中保留customErrors,以使您将错误/异常设为私有
<customErrors mode ="On"defaultRedirect ="MyErrorPage.htm"/>
在Web应用程序中,始终验证用户对html标记或任何脚本的输入.
切勿存储敏感信息,例如cookie中的密码.
如何在多个项目的AssemblyInfo.cs文件中更改程序集版本.我们的解决方案中有大约75个项目,我们几乎每周都需要更改版本.最快的方法是什么?
是否有任何设置使用iPhone键盘不会出现在网页中的特定文本框?可能是一些css的设置?
我正在使用带有多行选项ON的winforms文本框.我想限制可以在其中输入的行数.用户不应该输入更多行.
我怎样才能做到这一点?
如何在MS SQL Server中创建自定义聚合函数?一个例子会有很大帮助.
我想使用XmlReader保存并加载我的xml数据.但我不知道如何使用这个课程.你能给我一个开始的示例代码吗?
在使用整数值对字符串列表进行排序时,我遇到了一个奇怪的问题.但是,某些值可能会以某些字符作为前缀.
例如
// B1, 5, 50, A10, 7, 72, B3, A1, A2
Run Code Online (Sandbox Code Playgroud)
基本上有页码,应按如下方式排序:
// A1, A2, A10, B1, B3, 5, 7, 50, 72
Run Code Online (Sandbox Code Playgroud)
但是,如果我使用默认字符串排序,那么这些将被排序为
// A1, A10, A2, B1, B3, 5, 50, 7, 72
Run Code Online (Sandbox Code Playgroud)
C#中的任何解决方案?
有没有办法在数据库中使用继承(特别是在SQL Server 2005中)?
假设我有几个像CreatedOn,CreatedBy这样的字段,我想在我的所有实体上添加.我正在寻找一种替代方法,而不是将这些字段添加到每个表中.
我在WPF中使用DrawingContext进行一些自定义绘图.我DrawingContext.DrawText用来绘制字符串.现在,在一个我想垂直绘制文本的地方.DrawingContext或DrawText()函数中是否有任何选项可以垂直绘制文本?
.net ×5
c# ×3
database ×2
asp.net ×1
assemblies ×1
bug-tracking ×1
drawing ×1
html ×1
inheritance ×1
iphone ×1
security ×1
sorting ×1
sql ×1
sql-server ×1
versioning ×1
windows ×1
winforms ×1
wpf ×1
xml ×1
xmlreader ×1