2012-02-05 144 views
1

我是ASP.NET新手(显然)。我需要使用ASP.NET创建一个非常简单的数据库驱动的用户登录系统。在PHP中这很简单;只需在页面顶部调用session_start(),会话将被创建或恢复。然后,这只是连接到数据库和验证用户的问题。我能够在不到2个小时内使用php来学习这一点。简单的ASP.NET 4.0登录

使用ASP.NET和visual studio我没有那么好的运气。我已经研究了一下,尽管没有我想要的那么多,因为我没有太多时间花在这方面,并且阅读了两种实现登录的方法。首先,您可以使用密码表单控件,并将用户/传递信息放入web.config中。其次,您可以使用Membership API。我不喜欢这些。

有没有办法做到非常类似于PHP,你刚刚开始stinkin会话,连接到数据库,认证和你完成?我确信有,因为上课和工作,我没有足够的时间来根据需要进行研究。我希望这里有人能够节省我一点时间,并告诉我要查找什么!先谢谢你!

btw,我想使用visual studio 2010(如果那件事)。

+4

http://msdn.microsoft.com/en-us/library/ms178329.aspx,http://www.asp.net/web-forms/tutorials/security/introduction/an-overview-of-forms -authentication-vb – 2012-02-05 02:33:40

+0

http://stackoverflow.com/questions/2771094/how-do-i-create-a-custom-membership-provider-for-asp-net-mvc-2/ – Joakim 2012-02-05 02:44:57

回答

3

如果您创建一个Web应用程序并使用默认值,那么它将生成一个已经实现了完整登录系统的模板。你不需要做任何事情,只是为了你自己的目的修改这些页面。

您应该使用Membership API。这很简单,很容易。您应该使用FormsAuthentication系统,它是安全和健壮的,并经过良好测试。实施需要几秒钟,而不是两个小时。

+0

我会给会员API另一个机会。在我正在阅读的书中,这看起来过于复杂,但我会找到一本不同的书。我主要想确保没有什么我只是看。看来Membership API和FormsAutentication是实现它的两个主要方式。 – cchampion 2012-02-05 06:16:03

+0

@cchampion - 你不需要读一本关于它的书。去做就对了。创建一个新的WebApplication项目并运行它。你完成了。您可能想了解授权系统是如何工作的,但这会为您提供一个工具来测试它。 – 2012-02-05 06:41:23

+0

你是对的,我给了会员第二次机会,这一次我非常满意!我知道如何在几秒钟内创建一个带有登录功能的网络应用程序,但我并不十分满意,因为我讨厌不知道我的代码是如何工作的!然后当我读到它时,我拿起的第一本书被吸了起来。你说服我再试一次,我很高兴我做到了。谢谢! – cchampion 2012-02-09 13:39:09

1

您可以使用Session。

将用户名和密码存储在数据库中,然后您可以创建一个ASP.Net表单来记录用户,您将检查给定信息是否匹配。

例如,如果用户名和密码匹配,为您营造Session["Logged"] = true;如果不是:Session["Loged"] = false

对不起我的英语!

+0

使用会话是一个非常糟糕的理念。会话很容易被劫持,这意味着如果您的会话被劫持,攻击者将自动获得访问权限。最重要的是,会话在不可预知的时间超时。最后,授权(与认证不同)需要在会话可用之前在管道中进行。 – 2012-02-05 03:15:15

+0

但是,我不认为会议不是解决方案。来自@fvss的答案不应该得到一个downvote。 – 2012-02-05 03:26:02

+0

Mystere Man,当你说会话不如使用Membership API时,你是对的。但cchampion告诉他,他不喜欢它的工作方式,所以我不能以另一种方式思考Session。 – fvss 2012-02-05 03:44:06