【问题标题】:User impersonation with ASP.NET Forms Authentication使用 ASP.NET 表单身份验证的用户模拟
【发布时间】:2009-02-14 12:04:55
【问题描述】:

场景:在电子商务系统中,帮助台用户应该能够“冒充”或“登录为”特定客户(来自基于 Web 的管理站点),以便他可以直接支持客户 - 例如。当客户打电话时。

补充说明:无需跟踪原始身份验证上下文。我们只需要提供一个“登录为”按钮,该按钮将以客户身份登录,而帮助台用户无需知道密码。

任何想法如何使用常规 ASP.NET 表单身份验证来实现此场景?

【问题讨论】:

    标签: asp.net forms-authentication


    【解决方案1】:

    也许我不完全理解这个场景。但是为什么不让支持以用户身份登录呢?

    FormsAuthentication.SetAuthCookie("yourCustomersUserName");
    

    然后由电子商务系统决定是否有更新的“购物车”或任何支持可以提供帮助的东西..

    【讨论】:

    • 您可以从支持人员在用户名中键入的文本框中获取用户名吗?
    • auth cookie改变时会话是否自动切换?
    • 你不需要做一个 Session.Abandon() 吗?
    【解决方案2】:

    我能够让它工作,假设您已经有一个用户登录,您可以使用以下代码模拟另一个用户。

    FormsAuthentication.SignOut();
    
    FormsAuthentication.SetAuthCookie("username", true );
    

    【讨论】:

      猜你喜欢
      • 2011-04-06
      • 2020-05-23
      • 1970-01-01
      • 2010-11-07
      • 1970-01-01
      • 2011-11-21
      • 1970-01-01
      • 2014-09-08
      相关资源
      最近更新 更多