2010-05-18 77 views
2

我有一个需要用户登录的silverlight应用程序。Silverlight应用程序的登录功能

问题是,当你点击该网页重新加载在网站上的刷新按钮,并要求用户重新登录。

我希望它做的是什么样的ASP .NET当用户将进行20分钟,即使他们打的刷新按钮保持登录状态的行为。

ASP .NET使用什么机制来实现这一点?它是否使用会话变量作为例子,它在20分钟后如何过期?

谢谢。

回答

5

ASP.NET是用各种方法在服务器端执行此操作。最简单的,它可以是饼干。通常人们使用会话状态功能。滑动比例用于存储更新时间。

虽然你可以使用类似隔离存放做Silverlight的,它不会是安全的:独立存储不与ASP.NET,其中,服务器可以存储加密,并在本地系统上,对这个信息是安全的。

至于什么存储:你真的不想要。你应该让你的用户登录,在主机上点击一个Web服务。然后,您只需依赖ASP.NET或其他服务器端身份验证系统。你可以创建一个“perma-cookie”,但这只是复制已经有效的功能。

+0

好的,听起来不错。那么你建议应该在孤立存储中存储什么?用户和他们登录的时间?每当用户使用该网站时,都必须更新时间。这听起来很棘手。当用户使用该网站时,你如何捕捉? – peter 2010-05-18 04:38:56

+0

我明白了,所以他们的密码也必须存储在隔离存储中。 – peter 2010-05-18 04:39:44

4

除了存储在IsolatedStorage东西,你也可以访问该页面使用的Cookie。如果您在您的Cookie中存储身份验证令牌,那么您可以从Silverlight应用程序中挑选它。 This pagethis page可能会让你开始。

+0

+1有用的链接 – 2010-05-18 06:52:12

+0

@Jeff - 谢谢,我只是扩大你已经提到的:) – slugster 2010-05-18 07:04:22