2013-07-19 172 views
2

我們有一個單一登錄(SSO)Web應用程序,用於根據用戶名和密碼對不同應用程序中的用戶進行身份驗證。然後它會生成一個隨機標記並將其保存在數據庫中。Sharepoint 2013身份驗證

要在其他應用程序進行身份驗證的用戶,我們在每次請求運行的HTTP模塊,從而驗證令牌,並設置情境的用戶是這樣的:

WindowsIdentity identity = new WindowsIdentity(currentUsername, "WindowsAuthentication"); 
WindowsPrincipal principal = new WindowsPrincipal(identity); 
this.context.User = principal; 

此方法適用於2010年的Sharepoint(配置爲使用Windows身份驗證)。但是,這並不適用於新的Sharepoint 2013(也配置了Windows身份驗證)。

  1. 你知道爲什麼這種方法不再適用於Sharepoint 2013嗎?
  2. 對於我可以嘗試做這項工作,你有什麼建議嗎?
  3. 您是否對Sharepoint 2013的其他身份驗證方法有任何建議?

回答

0

這看起來像是爲我寫一個自定義聲明提供程序的用例。

http://msdn.microsoft.com/en-us/library/ee537299.aspx

基本上當一個調用,以sharpoint,它會重定向到一個自定義的理賠服務。在這裏你的代碼將運行,這將驗證用戶併發出令牌。此標記將由SP2013頒發,因爲您已在SP2013與索賠提供商之間建立了信任關係。