2014-06-11 74 views
-1

我跟隨此tutorial瞭解如何使用外部登錄創建MVC 5應用程序。問題是,當我到達使用SSL(https)的步驟時,我沒有得到適當的警告(應該讓我的內容在SSL和IE之後信任IE和Chrome),因此無論瀏覽器如何運行它我得到一個不可信內容的警告。如何在visual studio 2013中使用SSL

即使在教程中,這個人也可以在Firefox中使用它,因爲「Firefox使用自己的證書存儲,所以它會顯示警告」。你如何繞過這個?我不希望每個Firefox用戶在訪問我的網站時都會收到警告。

所以基本上,我啓用SSL之後如何讓瀏覽器信任我的網站?

爲了讓更多在這裏明確的是一些代碼,我用它來啓用HTTPS-要求:

public class FilterConfig 
    { 
     public static void 
     RegisterGlobalFilters(GlobalFilterCollection filters) 
     { 
      filters.Add(new HandleErrorAttribute()); 
      filters.Add(new System.Web.Mvc.AuthorizeAttribute()); 
      filters.Add(new RequireHttpsAttribute()); 
     } 
    } 

然後讓我的首頁和LoginPage擅自訪問:

public class HomeController : Controller 
    { 
     [AllowAnonymous] 
     ... 

回答

2

的演示您正在使用自簽名證書進行討論,這應僅用於本地測試目的,它會生成沒有可信認證中心(CA)的有效證書,這意味着沒有用戶會自動信任它。您可以閱讀更多關於自簽名證書here

在演示中,你將被要求信任證書,這將其安裝在本地證書存儲,這樣你就不會再提示您,它是由你來決定你是否信任該證書或沒有,因爲它不來自可信任的CA.這不會批准它用於任何其他用戶,任何瀏覽到您的測試網站的用戶也會得到相同的提示。

當你準備好供其他用戶使用你的網站,你應該提供來自受信任的CA的有效證書,除非這是一個內部網站,你的公司已經PKI,那麼你需要購買一個,看herehere免費的。

如果您在Azure上託管您的站點,並且不介意使用azurewebsites.net域,那麼您將免費獲得ssl。如果您想使用自己的主機名並使用Azure,則需要更改爲標準站點,@ troy-hunt對如何實現這個here有很好的瞭解。