2014-09-30 47 views
0

我有一个使用Windows身份验证(通过)在IIS上的asp.net站点,我试图以编程方式连接到TFS API。TFS API TF30063:您没有权限访问http://

当我在我的dev的机器上运行它,一切都很好,但一旦该网站是在IIS我不断收到{"TF30063: You are not authorized to access http://mytfsserver."}

我已经调试直播网站,它好像总是需要的用户为“NT系统”而不是实际登录的用户。

如果我为应用程序池提供了我的帐户详细信息,它将按预期工作。 关于如何绕过这个的任何想法?它失败

代码:

Uri collectionUri = new Uri(rootWebConfig.AppSettings.Settings["TFS_TEST_URI"].Value); //TEST ENV 
tpc = new TfsTeamProjectCollection(collectionUri, CredentialCache.DefaultNetworkCredentials); 
tpc.Authenticate(); 
workItemStore = tpc.GetService<WorkItemStore>(); 

回答

0

您是否已达到标准的Active Directory双跳认证的问题。

你有两个选择:

  1. 用户名密码& - 如果你问用户实际进入他们的用户名和密码,您可以为验证他们的身份。
  2. Kerberos - 如果启用并配置Kerberos,则可以启用直通认证。你需要正确配置的SPN:http://blogs.technet.com/b/askds/archive/2008/06/13/understanding-kerberos-double-hop.aspx

我会用kerberos标记去。这是一个痛苦的配置,但作品一种享受。您唯一的选择是在TFS服务器上运行您的Web应用程序并跳过双跳。

相关问题