2014-09-30 48 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應用程序並跳過雙跳。

相關問題