2009-09-04 48 views
3

我想通過Web應用程序在SharpSVN中調用RemoteCreateDirectories,並且希望憑證是登錄用戶的憑證。這可以隱式完成,還是按照下面的示例所需的用戶名和密碼?使用當前的HTTP請求標識作爲SharpSVN的默認憑據

using (var svnClient = new SvnClient()) 
{ 
    svnClient.Authentication.DefaultCredentials = new NetworkCredential(@"aaa\bbb", "ccc"); 
    svnClient.LoadConfiguration(repoName); 
    svnClient.RemoteCreateDirectories(uris, args); 
} 

我不想從用戶(它是一個集成的身份驗證的應用程序),所以我這周圍看到的唯一其他方法explciitly要求憑據是使用的服務帳戶,這是不理想的。

回答

0

終於找到了reference基本上說,這是不可能的使用當前用戶的身份和唯一選項是目錄樹的人工建築或使用管理/服務帳戶。我選擇了後者;不理想,但我仍然運行起來。

0

您是否嘗試過使用CredentialCache.DefaultCredentials - 這應該包含當前登錄用戶的憑據。

http://support.microsoft.com/kb/813834

+0

不工作時,看到的背景在我接受的答案的鏈接: 「當你使用System.Net.Credentia lCache.DefaultNetwor kCredentials它確實包含了當前用戶/令牌/是有效的本地機器,而不是真正的用戶名和密碼,可以傳輸到存儲庫。「 – 2009-09-08 11:16:26

1

CredentialCache.DefaultCredentials包含當前憑證的標記。它不提供實際的用戶名和/或密碼。

您需要準確的用戶名和密碼才能通過SharpSvn將它們傳遞給Subversion庫。

+0

感謝伯特,所以只是要清楚,這是不可能的一個Web應用程序沒有要求用戶手動輸入用戶名和密碼? – 2009-09-09 10:58:16

相關問題