2010-07-20 76 views
0

我有一個圖形用戶界面爲我的公司產品。 我想保護在客戶端和服務器之間來回發送的數據。安全的web服務器asp.net

SSL是選項之一嗎?如果是,請告訴我如何在我的應用程序代碼中實現它的步驟。

我是否需要購買證書,或者我可以讓它成爲..這是最好的選擇嗎?

任何幫助表示讚賞。感謝

我登錄使用的FormsAuthenticationTicket如下..:

Session["userName"] = UserName.Text; 
        Session["password"] = Password.Text; 
        Session["domain"] = Domain.Text; 
        string role = "Administrators"; 

        // Create the authentication ticket 
        FormsAuthenticationTicket authTicket = new FormsAuthenticationTicket(1,       // version 
                UserName.Text,   // user name 
                DateTime.Now,    // creation 
                DateTime.Now.AddMinutes(60),// Expiration 
                false,      // Persistent 
                role);   // User data 

        // Now encrypt the ticket. 
        string encryptedTicket = FormsAuthentication.Encrypt(authTicket); 
        // Create a cookie and add the encrypted ticket to the 
        // cookie as data. 
        HttpCookie authCookie = 
           new HttpCookie(FormsAuthentication.FormsCookieName, 
               encryptedTicket); 

        // Add the cookie to the outgoing cookies collection. 
        Response.Cookies.Add(authCookie); 

        // Redirect the user to the originally requested page 
        Response.Redirect(FormsAuthentication.GetRedirectUrl(UserName.Text, false)); 

我不知道如何安全的,這是?有什麼建議麼。

+0

所以我發現這個鏈接..for SSL安裝。希望能幫助到你。 http://www.windowsecurity.com/articles/Protect-Web-Servers-SSL.html 和 http://security.fnal.gov/pki/webauthors.html – user175084 2010-07-20 15:40:47

回答

5

SSL是選項之一嗎?

它是唯一明智的

如果是,請some1能告訴我如何實現它在我的應用程序代碼的步驟。

假設您正在處理瀏覽器(而不是您自己的客戶端應用程序,然後通過HTTP與服務器進行通信)。您不要使用SSL來接近您的應用程序代碼(除了確保您的URI是https)。

您只需在服務器上安裝SSL證書。

我需要購買證書還是可以讓它成爲..這是最好的選擇?

您可以生成一個自簽名證書,但這會生成有關用戶瀏覽器信任的可怕警告。如果用戶在技術上精通或者您有資源在事先安裝所有客戶端的證書(並將其標記爲可信),這沒什麼問題。否則,你可能應該買一個。

+0

非常感謝你的解釋良好的答案..所以如果我去用SSL我不需要在我現在的代碼做任何改變?我只是購買證書,然後做什麼..如果有任何進一步的步驟,我需要按照安裝,請讓我知道。我問這個,因爲在我向經理解釋之前我需要了解。感謝所有的幫助 – user175084 2010-07-20 14:41:59

+0

這取決於你的服務器。我假設你使用IIS,在過去的十年左右我已經避免使用IIS。 – Quentin 2010-07-20 15:00:59

+0

是的,我使用iis ..所以你用什麼來實現SSL?謝謝 – user175084 2010-07-20 15:04:03

1

在.net代碼中使用身份驗證將無法確保通信「在線上」。 SSL是保護瀏覽器和Web服務器之間的Web流量的選項。您需要購買安全證書並配置您的Web服務器(而不是您的ASP.NET應用程序)以使用證書。

+0

謝謝。所以我不做任何改變我的代碼?是在服務器上安裝SSL的任何步驟,或任何您知道的鏈接。這對我開始工作會非常有幫助..再一次感謝你.. – user175084 2010-07-20 14:44:32