c# - Asp.net MVC 多用户 session /用户模拟

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

大家好,如果我们可以说用户 session 模拟,我可以帮助管理

我在我的应用程序中实现了角色模式,为了简单起见,假设我有 2 个角色

  • 系统管理员
  • 普通用户

当用户登录系统时,他们会被重定向到他们的特定模块 EX:如果用户是管理员,他们会被重定向到管理部分,到目前为止没有问题,这只是为了给你一些背景信息。

系统管理员的功能之一是能够模拟普通用户帐户,这样他们就可以像普通用户一样执行任何操作,我这样做的方式很简单我只是登录系统管理员并重新验证作为用户,问题是当同一个管理员想要同时使用多个帐户时,按照该方法我用最新信息覆盖 cookie session ,所以如果我有 2 个选项卡,我决定去上一个选项卡当我刷新选项卡时,系统管理员将获得的信息是最新的,所以我在考虑尝试混合无 cookie session 以将所有信息获取到 url 中的可能性,理论上有多个 asp.net session 。

所以问题是如果这可能的话,如果系统默认使用 cookie 存储,我可以让两个系统同时运行吗?我可以默认有cookie系统,然后通过编程设置无cookie系统吗?

我只是不想在所有操作中手动传递用户 ID 并自己通过查询字符串保留该信息,因为在这个阶段这实际上会破坏我的代码,我将不得不重构系统

欢迎任何评论!

最佳答案

不可能在同一个浏览器中同时打开两个身份。

我想到了两种选择:

  • 要求管理员打开其他浏览器或不同用户打开同一浏览器(对于 Chrome)以同时操作两个身份。
  • 更改您的应用程序的方法:不要更改身份,而是为管理员提供与用户的下拉菜单。该操作将使用该用户执行以检索数据或其他内容。 (当然取决于您的应用)

关于c# - Asp.net MVC 多用户 session /用户模拟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14484382/

相关文章:

asp.net - 根据 IP 地址限制对 Elmah 的访问

c# - 配置 StructureMap.MVC5 以使用身份的问题

C# 将多个 JSON 集合反序列化为单个 List<T>

c# - 有人可以解释一下 C# 中的 "passing by value"和 "Passing by reference"是什么意思吗?

c# - 当表格只包含标题并且表格上没有插入行时,如何在 asp.net 中显示一个空的 gridview?

asp.net - INSERT 存储过程不起作用?

javascript - MVC 通过客户端删除自定义验证规则

c# - 为什么我的 WPF 应用程序在最小化一段时间后变得很慢?

c# - IDisposable 的替代用途是什么?

c# - 如何在 Azure 移动应用服务中获取 Cosmos Db 数据