在使用集成Windows身份验证的ASP.NET Web应用程序中,会话是否与Windows身份绑定在一起?
换句话说,如果我登录(使用IWA)到应用程序,并且应用程序在我的会话中存储了一些“内容”,是否可以通过会话ID单独访问这些内容?例如,如果一个恶意的人设法窃取我的会话ID,但不是我的凭据,他可以访问我的会话内容吗?或者这个会话只能访问相同的身份,需要这两个会话ID和Windows身份来访问它?使用Windows身份验证的会话管理
6
A
回答
4
优秀的问题。在我写这个答案之前,我刚刚进行了测试以确认。
如果我是“人A”,你是“人B”,那么这就是有发生:
- 在使用IWA网站某甲日志,被分配一个会话ID(例如,在URL)
- 者B也登录到网站,作为本身(因此它们必须被认证)
- 人A发送个人B包含会话标识符
- 人员B的点击一个URL链接在那个链接上,他们使用Person A的会话细节直接进入网站
请注意,即使他们正在使用人员A的会话详细信息,但仍然通过网站将人员B识别为“人员B”。因此,如果你有检查用户权限等的代码,那么这些检查仍然是在人员B的情况下完成的。
这听起来像是一个大问题,但它不是真的只要程序员不是不小心。例如,Person B在我的测试中得到的唯一效果是他们继承了Person A设置的屏幕和网格布局,因为我们正在进行权限检查(即,它们没有被缓存)。如果您将敏感数据存储在会话中,那么这可能是一个问题,但是如果它们显示每次显示时没有权限检查的字段,则这只是一个问题。如果Person A的会话没有过期,那也只是一个问题。
相关问题
- 1. 如何使用Perl进行身份验证和会话管理?
- 2. 使用Apache CXF进行身份验证和会话管理DOSGi
- 3. 使用Windows身份验证的简单身份验证代理
- 4. 未经身份验证的用户的会话管理
- 5. Windows身份验证会话超时
- 6. Windows身份会话管理Silverlight/WPF
- 7. Android用户身份验证和会话管理
- 8. 身份验证:JWT使用与会话
- 9. 使用会话存储身份验证?
- 10. CherryPy会话身份验证?
- 11. ASP.NET身份验证会话
- 12. 与opencart的WordPress的管理会话身份验证?
- 13. 管理员身份验证
- 14. iOS中的身份验证和会话管理
- 15. 如何在Android中管理未经身份验证的会话?
- 16. 使用Windows会话的Intranet身份验证
- 17. 使用Windows身份验证的ASP.NET角色管理
- 18. 联合身份验证和会话管理
- 19. GWT身份验证的用户会话
- 20. 使用Asp.net杀死Windows身份验证会话
- 21. Play Framework - 使用会话身份验证的代理请求
- 22. 使用Python验证对Telnet会话的身份验证
- 23. 如何使用Oracle身份管理器进行身份验证?
- 24. Django管理员:停用身份验证
- 25. 基于会话的身份验证
- 26. Webview中的身份验证会话
- 27. 身份验证管理器中的交换机身份验证处理程序
- 28. 如何使用Windows身份验证和注册自定义身份验证管理器
- 29. java web应用程序中会话管理的身份验证机制
- 30. ASP.net表单身份验证 - 管理员杀死单个用户的会话
更“无辜”的场景的好例子:)。那么你是说会话和身份验证没有任何关系?这很奇怪......在会话中存储角色或其他授权令牌实际上很常见,这会在此场景中导致此问题严重。谢谢。 – AviD 2009-11-17 02:01:20