2011-09-08 234 views
0

我是Sharepoint/MS Developer,不太熟悉Livelink。無論如何,我看到他們有一個.NET WCF服務。我正在嘗試使用此Web服務進行身份驗證,並且就我可以從API文檔中讀取的內容而言,它不應太難。Livelink WCF Webservice - 身份驗證問題

根據文檔,我需要授權一個管理員用戶,我這樣做,這工作正常。然後我可以模仿使用當前登錄的用戶。

一切工作正常,直到我到達ImpersonateUser部分失敗,一個非常通用的「執行此操作的權限不足」。錯誤。這是客戶端的問題嗎?或LL方?可能的Kerberos不能安裝或者根本不安裝?

Herwith代碼:

private string ImpersonateUser(string adminToken) 
{ 
       string userToken = string.Empty; 

       llAuthentication.OTAuthentication fLLAuthentication = new llAuthentication.OTAuthentication(); 
       fLLAuthentication.AuthenticationToken = adminToken; 

       fAuthServiceUser = new AuthenticationClient(); 
       fAuthServiceUser.Endpoint.Address = new EndpointAddress(this.ServiceRoot + "Authentication.svc"); 
       fAuthServiceUser.ClientCredentials.Windows.AllowedImpersonationLevel = System.Security.Principal.TokenImpersonationLevel.Impersonation;   

       userToken = fAuthServiceUser.ImpersonateUser(fLLAuthentication, WindowsIdentity.GetCurrent().Name.ToString()); 

       return userToken; 
} 
+0

x0n是正確的。請注意:如果您要集成SP和LL,則可以查看Open Text的SharePoint產品AGA(應用程序管理和存檔)。它爲開發者從SP訪問LL提供了一個SDK。你可能會發現一些複雜的場景,這樣你就不需要用WS從頭開始編程。 –

回答

2

這有什麼做與Windows身份驗證。這意味着您最初用於登錄的livelink用戶無權模仿其他livelink用戶。請求你的livelink管理員授予這個權利(我不知道確切的右手,對不起)

+0

正確。您可以使用具有系統管理權限的管理員或其他用戶來啓動模擬連接。我不確定是否可以通過使用LL界面來限制用戶。 –