2011-07-14 186 views
5

我們正在考慮配置GIT以供Active Directory環境中的Windows客戶端使用,並且我想知道人們已經成功配置了哪些配置。在Windows/Active Directory環境中的服務器上配置GIT

我們最初設置了HTTPS/Apache以及針對AD的基本身份驗證。但是,這要求爲來自客戶端的每次推送提供證書。 Kerberos會不會很痛苦?

我很在乎使用SSH和私鑰對,因爲它會增加我們IT團隊所需的維護。有沒有辦法將私鑰綁定到AD帳戶,以便可以通過git(某種AD連接的plink.exe替換)自動獲取私鑰?

我基本上是想盡量減少IT團隊和開發人員的持續痛苦。我在浪費時間嗎?我應該看看Mercurial嗎?

澄清:我有Git在Windows上的經驗,github作爲一個遠程,我喜歡它。不過,我很高興看到Mercurial(我已經使用過,但只有一點點),如果這意味着在Windows下更好的身份驗證支持。

+0

很好的問題,想聽聽有關人的意見:) –

+0

看看gerrit http://stackoverflow.com/questions/10447520/gerrit-and-active-directory – bill

回答

1

究竟是什麼問題?一直手動提供憑證?
如果您使用Kerberos或針對AD的LDAP綁定,除非您的客戶端/服務器無法緩存證書(例如使用會話),否則每個(後續)請求都必須重新進行身份驗證,因爲HTTP是無狀態協議與SSH形成對比。 雖然Kerberos在主機和客戶機上的配置方面更容易,但msysgit的HTTP傳輸庫支持與SSPI或GSSAPI進行SPNEGO協商。

我嚴重懷疑Mercurial是否會解決這個問題,因爲它沒有執行任何驗證。一些圖書館爲此而努力。