今天调程序,同水晶报表的交互和excel交互总调不出来,上网查到解决办法:将identity impersonate="true"改为identity impersonate="false"即可。
于是,去查找identity impersonate相关的资料,找到比较系统的介绍:asp.net标识矩阵。详见如下:
本页内容
![]() | 目标 |
![]() | 适用范围 |
![]() | 如何使用本章内容 |
![]() | 摘要 |
![]() | IIS 匿名身份验证 |
![]() | IIS 基本身份验证 |
![]() | IIS 摘要式身份验证 |
![]() | IIS 集成 Windows |
目标
本章的目标是:
• | 了解 ASP.NET 标识 |
适用范围
本章适用于以下产品和技术:
Windows 2000 Server 2000 SP3
Microsoft .NET Framework SP2
Microsoft SQL Server 2000 SP2
如何使用本章内容
本章是《构建安全的 ASP .NET 应用程序》指南的参考章节。它包含一些补充信息,可以帮助您进一步了解本指南其他章节中所述的解决方案,应在阅读时一并阅读。
摘要
主体对象实现 IPrincipal 接口并表示特定用户(代码代表该用户运行)的安全性上下文。主体对象包括用户的标识(作为包含的 IIdentity 对象)和用户所属的任何角色。
ASP.NET 提供了以下主体和标识对象实现:
• | WindowsPrincipal 和 WindowsIdentity 对象表示已使用 Windows 身份验证验证了身份的用户。对于这些对象,可以从 Windows 用户所属的 Windows 组集中自动获取角色列表。 |
• | GenericPrincipal 和 GenericIdentity 对象表示已使用窗体身份验证或其他自定义身份验证机制验证了身份的用户。对于这些对象,以自定义方式获取角色列表(通常是从数据库中获取的)。 |
• | FormsIdentity 和 PassportIdentity 对象分别表示已使用窗体身份验证和 Passport 身份验证验证了身份的用户。 |
以下各表说明了在 IIS 身份验证设置的范围内,从保存 IPrincipal 和/或 IIdentity 对象的每个变量中获取的结果标识。表中使用了以下缩写词:
• | HttpContext = HttpContext.Current.User,它返回包含当前 Web 请求的安全信息的 IPrincipal 对象。这是经身份验证的 Web 客户端。 |
• | WindowsIdentity = WindowsIdentity.GetCurrent(),它返回当前执行的 Win32 线程的安全性上下文的标识。 |
• | Thread = Thread.CurrentPrincipal,它返回当前执行的 .NET 线程(在 Win32 线程之上)的主体。 |
IIS 匿名身份验证
Web.config 设置 | 变量位置 | 结果标识 |
<identity impersonate="true"/> | HttpContext | - |
<identity impersonate="false"/> | HttpContext | - |
<identity impersonate="true" /> | HttpContext | 用户提供的名称 |
<identity impersonate="false"/> | HttpContext | 用户提供的名称 |
IIS 基本身份验证
Web.config 设置 | 变量位置 | 结果标识 |
<identity impersonate="true"/> | HttpContext | 域/用户名 |
<identity impersonate="false"/> | HttpContext | 域/用户名 |
<identity impersonate="true"/> | HttpContext | 用户提供的名称 |
<identity impersonate="false"/> | HttpContext | 用户提供的名称 |
IIS 摘要式身份验证
Web.config 设置 | 变量位置 | 结果标识 |
<identity impersonate="true"/> | HttpContext | 域/用户名 |
<identity impersonate="false"/> | HttpContext | 域/用户名 |
<identity impersonate="true"/> | HttpContext | 用户提供的名称 |
<identity impersonate="false"/> | HttpContext | 用户提供的名称 |
IIS 集成 Windows
Web.config 设置 | 变量位置 | 结果标识 |
<identity impersonate="true"/> | HttpContext | 域/用户名 |
<identity impersonate="false"/> | HttpContext | 域/用户名 |
<identity impersonate="true"/> | HttpContext | 用户提供的名称 |
<identity impersonate="false"/> | HttpContext | 用户提供的名称 |