2013-12-13 13 views
1

假設有一個TFS服務器安裝了某種WF構建活動。例如,這只是一個例子,假設活動需要構建輸出,解密存儲在服務器某處的憑證,並執行需要解密憑證的操作:也許它會將構建輸出的副本通過網絡發送給某些計算機,客戶端無法直接訪問。TFS客戶端需要擁有由構建服務器調用的工具的本地副本嗎?

TFS客戶端是否需要執行該操作的構建活動的本地副本?或者他們只是將他們的代碼更改推送到服務器,並讓TFS服務器決定如何構建代碼以及如何處理構建輸出?或者,客戶是否可以控制TFS用於構建代碼及其在構建輸出上執行的操作的工具?回到我提供的例子,如果用戶需要提供構建後行爲的憑證,那麼這個活動的實現者是負責確保憑證在從客戶端傳輸到服務器時得到適當保護或TFS照顧那個?

回答

0

創建後,您可以將團隊構建自定義構建活動放入custom binaries in source control and configure the custom binary path of the Build Controller。當這樣的構建得到執行時,TFS將自動獲取二進制文件。至於爲安全提供憑證,TFS沒有任何事情可以幫助你。儘管可以使用SSL保護與TFS的通信(在TFS服務器上配置SSL安全性),但構建參數也以純文本格式存儲在TSF數據庫中。

您的自定義活動和您用於編輯值的設計器可以提供某種形式的值加密,這將確保它們不是純文本存儲在服務器數據庫中,但您可能必須使用這個工作的靜態鍵。

最好的解決方案是在你使用的用戶憑證下運行Build Agent,這樣構建代理本身具有適當的權限,因爲構建代理將不會傳輸任何憑據或祕密。使用NTLM或Kerberos進行身份驗證。

0

構建發生在構建服務器上(安裝了TFS構建代理)。任何自定義活動都被檢入到TFS中,並在Build Controller屬性中告訴它該目錄在哪裏。構建控制器確保將該目錄中的所有程序集作爲構建過程的一部分下載到每個構建代理。

相關問題