2014-03-28 62 views
2

我在ASP.NET MVC3中有一個門戶網站,在某些特定操作中,我需要在新選項卡中打開從其他團隊開發的需要基本身份驗證的外部門戶。使用基本身份驗證從控制器重定向到外部網址

我知道我們在控制器中有重定向方法,允許重定向到任何URL。但我不知道如何將憑證傳遞給此。

我是想這樣的事情:

var request = (HttpWebRequest)WebRequest.Create(redirectUrl); 

request.Method = "GET"; 
request.UseDefaultCredentials = false; 
request.PreAuthenticate = true; 

var cred = new NetworkCredential("user1", "pass123"); 
var cache = new CredentialCache(); 
cache.Add(new Uri(redirectUrl), "Basic", cred); 

request.Credentials = cache; 
var response = (HttpWebResponse) request.GetResponse(); 

return Redirect(response.ResponseUri.ToString()); 

回答

0

有兩種方法來從瀏覽器向服務器憑據。他們可以進入URL或他們可以進入授權標題。 URL方法很容易實現,請參閱this SF question。對於授權標題,維基百科在how to construct it上有說明,但我不確定如何將它發送給頁面請求(而不是可能的Ajax請求)。

相關問題