在Intranet应用程序中实现安全性

时间:2012-05-21 06:20:50

标签: c# wpf security sql-server-2008-r2 wcf-security

我使用过WPF,WCF,EF 4和SQL Seerver 2008 R2组合创建的桌面应用程序。

现在我必须准备我的软件进行安全审核,我需要知道我可以做些什么来确保我的应用程序中的安全参数。目前我正在使用Active Directory进行WCF服务身份验证。

据我所知,我可以采取一些措施来提高应用程序的安全性:

  • 代码混淆 - 保护代码库
  • 可以使用TDE - 保护数据库并加密机密表。
  • 可以使用SSL - 来保护通信渠道(关于这个的任何好文章都可以帮助很多因为我没有找到任何可以解释如何为内联网桌面应用程序执行此操作的好东西)

我还可以做些什么来保护申请。我还不清楚如何保护客户端之间的通信通道< - >服务器和服务器< - >数据库中。

任何帮助将不胜感激。感谢..

1 个答案:

答案 0 :(得分:3)

不要浪费你的时间进行混淆。良好的安全性是透明的混淆只对保护知识产权有用,即使这样也存在争议。

无论如何,听起来你想专注于一些事情:

  1. 获取应用程序服务器和SQL Server的SSL服务器证书。如果您不想花钱,可以创建自己的PKI或自签名证书颁发机构。我不建议自行签名进行制作,也不应轻视自己的PKI。
  2. Use protocol encryption to secure the connection between your application and the SQL Server instance.
  3. 使用需要传输安全性的绑定来使您的WCF通信使用SSL。 http://msdn.microsoft.com/en-us/library/ms734679.aspx

    http://social.msdn.microsoft.com/Forums/en-US/wcf/thread/b361ee9e-2f37-4ecf-ba8b-96c6d6e6118a

  4. 审核您的身份验证例程。你有哈希和盐渍密码吗?您是否审核安全事件(登录,注销,失败尝试)?在一定次数的失败尝试后您是否锁定帐户?等等等等。与任何审计你的人一起工作将有助于了解他们将要寻找什么。