C#编程的安全性

安全性(C# 编程指南)

Visual Studio 2005
 

 

安全是每个 C# 应用程序的一个非常重要的方面,在每个开发阶段都必须考虑:而不仅仅是在完成设计和实现后才需要考虑。

本列表并未列出所有潜在的安全问题。它强调 C# 开发人员需要知道的一些常见问题。

  • 使用 checked 关键字控制整型算术运算和转换的溢出检查上下文。

  • 始终对参数使用最严格的数据类型。例如,在将一个值传入描述数据结构大小的方法时,应使用无符号整数而不是整数。

  • 不要根据文件名作出决定。文件名可以用多种不同的方式表示,因而检测是否有特定文件时可能会跳过该文件。

  • 千万不要将密码或其他敏感信息硬编码到应用程序中。

  • 始终验证用于生成 SQL 查询的输入。

  • 验证传入方法的所有输入。System.Text.RegularExpressions 命名空间中的正则表达式方法对于确认输入(如电子邮件地址)的格式是否正确很有用。

  • 不要显示异常信息:它会给任何潜在的攻击者提供有价值的线索。

  • 确保应用程序在最低的可能特权下运行时能够正常工作。少数应用程序要求用户作为管理员登录。

  • 不要使用自己的加密算法,应使用 System.Security.Cryptography 类。

  • 为程序集指定强名称。

  • 不要在 XML 或其他配置文件中存储敏感信息。

  • 仔细检查包装本机代码的托管代码。确保本机代码是安全的,尤其是在防止缓冲区溢出方面。

  • 在使用从应用程序之外传入的委托时应保持谨慎。

  • 对程序集运行 FxCop 以确保符合 Microsoft .NET Framework 设计准则。FxCop 还可以查找 200 多种代码缺陷并针对这些代码缺陷发出警告。

转载于:https://www.cnblogs.com/slarkleoric/p/7144720.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值