我正在考虑为 ASP.NET 应用程序创建一个诊断页面,该页面主要供管理员使用,以获取有关诊断问题的应用程序的更多信息。
页面可能包含的信息示例:
- System.Environment.MachineName(可能在网络场场景中有用)
- 系统.环境.版本
- 环境.用户名
- 数据库名称
- 当前用户的会话 ID
从安全角度来看,此页面上的某些信息可能是敏感的。如果你以前做过这种页面,你在访问这个页面时设置了什么样的安全措施?.
编辑 :
我应该补充一下——有时在以特定(即真实)最终用户身份登录时查看此页面可能会很有用。例如,说问题只能在以特定用户身份登录时重现。能够查看该用户的诊断页面可能很有用。例如,知道当前会话 ID 可能有助于调试。
编辑 2:
我开始认为这个诊断页面实际上应该是两个不同的页面。一种显示对所有用户都相同的内容(例如数据库名称、CLR 版本),另一种显示可能因会话而异的内容(例如浏览器信息、会话 ID)。然后您可以为第一页锁定更多安全性。