如何在使用Forms Authentication和ASP.NET时通过链接自动验证用户?

时间:2012-10-04 14:20:01

标签: c# asp.net .net forms-authentication

我的asp.net应用程序使用表单身份验证,工作正常。我也希望能够创造出神奇的魔力。某人可以关注该链接而不需要登录的链接。如果用户访问

http://myapp.com/viewstuff.aspx

然后他们会首先被重定向到login.aspx,但如果他们访问

http://myapp.com/viewstuff.aspx?ThingId=1234&Expires=20121004153200&Signature=aksdjfhalsdfydmvbsdkfjhysdk

然后它会自动将其作为访客帐户登录,让他们查看所请求的内容。我可以生成这样的链接并编写逻辑来检查签名是否有效,但我不确定ASP.NET生命周期中的哪个位置可以放置我的逻辑。有什么建议?

目前我已将逻辑放入Application_AuthorizeRequest,但它似乎并不理想,因为我需要在用户验证后重定向()。我更愿意设置一些内容,所以说好了,我已经认证了这个人并设置了他们的身份,让他们的请求继续下去。

如果有人有一个实现这个的例子会很棒。

1 个答案:

答案 0 :(得分:-1)

嗯,听起来你走在正确的轨道上。如果viewstuff.aspx需要身份验证,您将被重定向到您的登录页面,因此您需要将逻辑放在那里(在login.aspx.cs中)以提取您的查询字符串,拆分值并在传递之前验证用户身份回到了回归。