2011-11-04 114 views
0

我正在使用VS2010,C#,SQL Server来开发我的ASP.NET Web应用程序,虽然这不是我的第一次ASP.NET体验,但是这次我的项目更容易出现攻击我应该考虑更好的安全政策。我有一个登录屏幕作为我的第一页,用户输入他们的用户名和密码,并显示一个特定于他们的页面,在我上一个项目中,为了安全目的,我使用查询字符串(用户标识符)和会话,但是这次我只使用查询字符串,这意味着此刻可以输入myaddress.com?userid1并访问我的网站页面! 我知道这并不好,但我的方法是什么?我不是在银行或金融系统工作的课程,但是我要有一个标准的安全策略,我应该使用会话?饼干?你能否建议我采用易于开发和同时安全的方式实施保护政策?任何示例代码或提示?ASP.NET用户名/密码安全

感谢

+0

如果你正在传递URL参数远离这样的传递整数,有人可以很容易地克服这一点。查看URL重写,或者使用一些GUID。记住会话对于每个新来的用户都很好,他们是网络体验的一部分。 – JonH

+0

URL重写和GUID似乎是很好的方法,有没有实现它们的简短方法? –

+0

我不知道你是否在保护fort knox(应用程序不能被黑客入侵!)或你的购物清单(我们会被黑客攻击),但是你会希望使用一个内存,加密的cookie,最好是由管理员ASP.NET的成员身份功能可以跟踪请求之间以及希望使用Thread主体和/或ASP.NET内部User对象的请求期间的身份。 URL受到重播攻击,缺少任何内置的过期机制,可能由用户意外或意图传播给其他用户等。所以-1对于将URL放在URL上的建议除非这是一个购物清单 – MatthewMartin

回答

3

ASP.NET居然配备了所有你需要提供一个安全的网站开箱的设施,让您不必担心所有这些事情你自己。

使用内置的ASP.NET Membership features,你会没事的。

+0

+ 1 - 保持简单,并将精力集中在业务应用程序上,而不是其背后的安全性。良好的起点。 – JonH