2016-06-14 149 views
1

我正致力於在我的應用程序中實現身份驗證和授權。使用ADFS WS-Fed協議進行身份驗證和授權

對於身份驗證: 我由ADFS服務器配置了WS-Fed登錄協議並啓用了JWT。創建MVC應用程序並配置爲使用WS-Fed進行用戶身份驗證。

現在問題是如何在成功登錄後將JWT令牌存儲在我的Cookie中?

這裏是我的代碼

public partial class Startup 
    { 
     private static string realm = ConfigurationManager.AppSettings["ida:Wtrealm"]; 
     private static string adfsMetadata = ConfigurationManager.AppSettings["ida:ADFSMetadata"]; 

     public void ConfigureAuth(IAppBuilder app) 
     { 
      app.SetDefaultSignInAsAuthenticationType(CookieAuthenticationDefaults.AuthenticationType); 
      app.UseCookieAuthentication(new CookieAuthenticationOptions{ CookieName="JwtToken",CookieHttpOnly=false}); 
      app.UseWsFederationAuthentication(
       new WsFederationAuthenticationOptions 
       { 
        Wtrealm = realm, 
        MetadataAddress = adfsMetadata 
       }); 
     } 
    } 

授權 我有一個單獨的Web API項目。我想通過在每個請求的標頭中傳遞JWT標記來授權我的api,但不知道如何從cookie中提取JWT標記並將其傳遞給web api進行驗證。

回答