我将我的第一个ASP.NET MVC应用程序上传到App Harbor,它使用FormsAuthentication来简化用户身份验证。
正常情况下本地机器操作需要进行身份验证才能很好地执行,目前我在AppHarbor上进行身份验证时,他们失败了。
我检查了访问时发布的身份验证cookie是否随请求一起发送,因为它可以从图像中看到:
我的服务器端身份验证代码看起来像
FormsAuthenticationTicket authTicket = new FormsAuthenticationTicket(
1,
user.UserName,
DateTime.Now,
DateTime.Now.AddDays(1),
true,
user.UserName
);
string encTicket = FormsAuthentication.Encrypt(authTicket);
this.Response.Cookies.Add(
new HttpCookie(
FormsAuthentication.FormsCookieName,
encTicket)
{ Expires = authTicket.Expiration });
我在AppHarbor博客中阅读了不同的帖子,例如ASP.NET Forms Authentication Considered Broken,它说" harmflul"并且不是它不能正常工作。
那么,我在这里做错了什么?