ClaimsPrincipal
类进行,该类具有一个 Identities
属性,该属性通常填充一个 ClaimsIdentity
代表当前活动用户。在 Windows 桌面应用程序上,这通常包含一个 WindowsIdentity
引用当前登录的用户。
在我的应用程序中,我以自己的身份登录(“WORKDOMAIN\masonwheeler”),但我需要访问令牌才能访问存储在另一个域(我称为“SERVER\mwheeler”)的服务器上的资源。不过,相关类的 MSDN 文档并没有特别清楚地说明如何获取新的标识对象。例如,在上面链接的
WindowsIdentity
页面中,它显示了四种获取 WindowsIdentity
对象的不同方法,其中没有一种涉及从某种 UI 提示或通过从 Windows 检索存储的凭据来输入用户凭据。
假设我拥有“SERVER\mwheeler”帐户的合法访问权限和适当的凭据,我该如何为该身份获得第二个
ClaimsIdentity
并将其添加到Thread.CurrentPrincipal
上的身份列表?