几周前,我们有一位客户联系我们说,有时当他创建活动时,它会以别人的名字创建!
我们做了一些故障排除,找不到任何东西.我们要求用户在下次遇到这些问题时与我们联系.他确实与我们联系,我们能够与他进行一次讨论,并亲眼看到问题.
这不仅仅是活动,他被认为是应用程序中的其他人.他可以访问其他人应该访问的所有内容.就在那时我们意识到我们正在讨论会话混淆问题.
关于我们的代码:
与任何其他应用程序一样,我们有一个简单的登录页面,用户输入电子邮件和密码,我们根据数据库对它们进行身份验证,如果它们有效,我们调用FormsAuthentication.SetAuthCookie()将当前用户ID保存在cookie中我们让他进来
BL.User currentUser = BL.User.Authenticate(txtUsername.Text, txtPassword.Text);
if (currentUser != null)
{
this.Session["NumberOfLoginTried"] = "0";
FormsAuthentication.SetAuthCookie(currentUser.UserID.ToString(), chRememberMe.Checked);
Response.Redirect(FormsAuthentication.GetRedirectUrl(currentUser.UserID.ToString(), false));
}
Run Code Online (Sandbox Code Playgroud)
我们还使用以下代码在我们的应用程序中获取登录用户ID(当前用户).
public static int GetCurrentUserID()
{
int userID = -1;
int.TryParse(HttpContext.Current.User.Identity.Name, out userID);
return userID;
}
Run Code Online (Sandbox Code Playgroud)
是的,我们做了我们的家庭作业,并搜索了以下两个链接:
http://lionsden.co.il/codeden/?p=446
使用StateServer的ASP.NET会话混合(SCARY!)
我们已禁用.aspx和.ascx文件的内核模式缓存和用户模式缓存,但这仍然存在.
PS-该应用程序在带有IIS 7.5的Windows 2008 R2上运行.我们不使用cookieless会话.
我有很多时间在家里编码.通常我只是在工作和代码的远程桌面到我的电脑.但它是远程桌面:速度较慢,没有双显示器......
有没有更好的方法呢?也许是你随处可见的驱动器!
我们有一个包含3000多个文件夹的大型文档库.我们的客户希望能够在当前文件夹中进行搜索.因为这个文档库有很多文件夹,每个文件夹创建一个范围是不可能的.所以问题是:如何将搜索限制在文档库中的当前文件夹中?
谢谢
几天前,当我尝试在Visual Studio 2008中使用F5运行/调试我的Web应用程序时,我开始收到以下错误:
附加脚本调试器以处理机器'NAME'上的'[XXXX] IEXPLORE.EXE'失败.该进程没有足够的权限进行调试.
我正在使用Visual Studio 2008,IE8和Visual Studio Development Server(作为我的Web服务器)
我确实环顾四周,在网上找不到多少!!