我对IIS有点新,并不是100%确定这是可能的。我正在编写一个C#应用程序,需要获取用户网络凭证,然后使用这些凭证连接到TFS。我能够做一个或另一个,但从来没有在同一时间。服务器应用程序获得用户凭证和使用这些凭据访问网络服务
要获取正在访问站点的用户凭证,我必须使用NetworkService作为AppPool的Identity,并致电credentials = System.Web.HttpContext.Current.User.Identity.Name
。我需要获取用户名的原因是为了找出他们有权在TFS后使用item.VersionControlServer.GetEffectivePermissions(credentials, item.ServerItem)
访问哪些项目。
要连接到TFS我必须把用户凭据作为应用程序池的身份或提供网络服务访问TFS(不是东西,是会发生)通过调用RegisteredTfsConnections.GetConfigurationServer("server");
我要么需要一种方法来使用应用程序访问TFS所获得的凭证,或者我需要一种方法来创建一个具有“Network Service like”功能的新用户,以获取用户的凭据,然后授予此用户访问TFS的权限。