2010-02-05 141 views
84

我必須爲公司構建小型web應用程序以維護其業務數據......只有公司內部的人員纔會使用它,但我們計劃將其託管在公共領域,以便員工可以從各個位置連接到應用程序。 (直到現在我已經構建了僅在內部託管的Web應用程序)如何使用https保護網站

我想知道我是否需要使用安全連接(https)或只是表單身份驗證就足夠了。

如果你說HTTPS,我有一些問題:

  1. 我應該做的準備我的網站HTTPS。 (我是否需要更改代碼/配置)
  2. 是SSL和https之一併且相同...
  3. 我是否需要向某人申請才能獲得某些許可或其他內容。
  4. 我需要做擔保我的所有頁面或僅在登錄頁面...

我正在尋找的答案互聯網,但我沒能得到所有這些問題...任何白皮書或其他參考也將有所幫助...

隨意問你incase你需要更多的信息。

感謝

  • 拉賈
+0

大家好......謝謝大家......所有的答案都非常有幫助......在這裏選擇一個答案是不公平的(因此必須爲這樣的場合提供一個規定)。因此,我選擇了一個答案,並提出了其他答案......所選答案與其他答案同等重要... – 2010-02-05 10:48:32

+3

根據信息的機密性(例如,個人信息可能受到聯邦法律)以及你與公司有什麼關係和合同,你可能會想到如果有人攻擊該網站,你是否會承擔責任。 – huynhjl 2010-02-05 14:23:26

+0

在您的服務器上安裝了證書之後,要將https添加到IIS中的網站中,您只需轉到該網站並選擇「編輯綁定」,選擇https,然後選擇證書即可。 – bgmCoder 2018-02-24 15:01:49

回答

48

我應該做的準備我的HTTPS網站 。 (我需要改變 代碼/配置)

你應該保持最佳實踐記(這裏是一個很好的介紹:http://www.owasp.org/index.php/Secure_Coding_Principles)的安全編碼,否則,所有你需要的是一個正確設置SSL證書。

是SSL和HTTPS同一個..

好看多了,是的。

我需要向某人申請獲得 某些許可或其他東西。

您可以從證書頒發機構購買SSL證書或使用自簽名證書。你可以購買的價格差異很大 - 每年從10美元到數百美元不等。例如,如果您設置了在線商店,則需要其中的一個。自簽名證書是內部應用程序的可行選項。你也可以使用其中的一種進行開發。下面是關於如何設置的IIS自簽名證書一個很好的教程:Enabling SSL on IIS 7.0 Using Self-Signed Certificates

我需要讓我的所有網頁安全 或僅在登錄頁面..

使用HTTPS一切,不僅僅是最初的用戶登錄。這不會造成太大的開銷,它將意味着用戶從遠程託管的應用程序發送/接收的數據如果被攔截,則外部各方無法讀取這些數據。即使Gmail默認開啓了HTTPS。

+1

您還可以獲得免費的TLS證書,即從[讓我們加密](https:/ /letsencrypt.org/) – 1615903 2017-07-11 04:33:17

3

對於業務數據,如果數據是私有的,我會用一個安全連接,否則窗體身份驗證就足夠了。

如果您決定使用安全連接,請注意我沒有保護網站的經驗,我只是迴避了我在自己的個人經歷中遇到的情況。如果我錯了,請隨時糾正我。

我應該怎麼做才能爲我的網站準備https。 (我是否需要更改代碼/配置)

爲了使SSL (Secure Sockets Layer)爲您的網站,您將需要建立一個證書,代碼或配置沒有改變。

我已使用來自this online tutorialOpenSSLActivePerl爲內部Web服務器啓用了SSL。如果這是爲更多的觀衆(我的觀衆少於10人),並在公共領域,我建議尋求專業的選擇。

是SSL和HTTPS同一個...

不完全是,但他們結伴而行! SSL確保數據在查看網站時被加密和解密,https是需要訪問安全網站的URI。當您嘗試訪問http://secure.mydomain.com時,您會注意到它會顯示一條錯誤消息。

我需要申請與某人獲得一些許可或什麼。

您不需要獲得許可證,而是獲得證書。您可以查看公司提供的專業服務與安全網站,例如VeriSign作爲示例。

我需要做擔保我的所有頁面或僅在登錄頁面...

您的證書爲mydomain.com使每一個*.mydomain.com下屬於將被固定頁面。

1

4.Do我需要保護我的所有頁面或僅在登錄頁面...

只要保持在登錄頁面下HTTPS

這將確保沒有開銷瀏覽其他網頁時。條件是您需要在Web配置中提供正確的身份驗證設置。這是爲了確保沒有登錄的用戶無法瀏覽需要認證的頁面。

+2

僅在TLS下爲您的網站提供服務是不安全的。主動攻擊者可以使用SSLStrip並訪問所謂的受保護頁面。 – Tobu 2015-01-20 16:16:27

8

什麼樣的業務數據?商業機密或者只是他們不希望人們看到的東西,但如果它出來了,這不會是什麼大不了的事情?如果我們談論商業祕密,財務信息,客戶信息和通常是保密的東西。那麼甚至不要走這條路。

我不知道我是否需要使用 安全連接(HTTPS)或僅 窗體身份驗證就足夠了。

一路使用安全連接。

我是否需要更改代碼/配置

是。好的可能不是。你可能想讓一位專家爲你做這件事。

是SSL和HTTPS同一個...

大多是。人們通常將這些事情稱爲同一事物。

我需要申請與某人獲得一些許可或什麼。

您可能希望讓您的證書由證書頒發機構簽名。這會花費你或你的客戶一點錢。

我需要做擔保我的所有頁面或僅在登錄頁面...

使用HTTPS貫穿始終。如果網站面向內部用戶,性能通常不是問題。

我正在尋找互聯網上的答案, 但我沒能獲得所有這些 點...任何白皮書或其他 引用也將是有益的......

開始這裏一些指針:http://www.owasp.org/index.php/Category:OWASP_Guide_Project

請注意,SSL是一個很小的部分,使您的網站一旦可以從互聯網上獲得安全。它並不能阻止大多數黑客行爲。

+0

+1有關通過詢問信息是否非常機密以及建議不將其在線的方式提供有關保護所有方式和防止災難的聲音建議 – BlueTrin 2010-02-05 09:27:42

7

我認爲你對你的網站身份驗證和SSL感到困惑。

如果您需要將您的網站轉換爲SSL,那麼您需要在您的Web服務器上安裝SSL證書。您可以從賽門鐵克等其中一個地方爲自己購買證書。證書將包含您的公鑰/私鑰對以及其他內容。

您不需要在源代碼中執行任何操作,而且您仍然可以繼續在您的站點中使用表單驗證(或任何其他)。只是,Web服務器和客戶端之間發生的任何數據通信都將使用您的證書進行加密和簽名。人們會使用secure-HTTP(https://)訪問您的網站。

查看本作的詳細信息 - >http://en.wikipedia.org/wiki/Transport_Layer_Security

1

@balalakshmi提到了正確的認證設置。身份驗證只是問題的一半,另一半是授權。

如果您使用表單身份驗證和標準控件(如<asp:Login>),則需要執行幾項操作才能確保只有經過身份驗證的用戶才能訪問受保護的頁面。

web.config,下<system.web>部分,你需要在默認情況下禁用匿名訪問:

<authorization> 
<deny users="?" /> 
</authorization> 

將被匿名訪問的任何頁面(如頁面的Login.aspx本身)將需要有重新允許匿名訪問的覆蓋。這需要<location>元素,並且必須位於<configuration>水平(<system.web>部分),像這樣:

<!-- Anonymous files --> 
<location path="Login.aspx"> 
<system.web> 
    <authorization> 
    <allow users="*" /> 
    </authorization> 
</system.web> 
</location> 

請注意,您還需要允許任何樣式表或腳本匿名訪問該正在使用的匿名頁面:

<!-- Anonymous folders --> 
<location path="styles"> 
<system.web> 
    <authorization> 
    <allow users="*" /> 
    </authorization> 
</system.web> 
</location> 

注意位置的path屬性是相對於web.config文件夾,不能有~/前綴,不像大多數另一個是對ath型配置屬性。

-2

嘗試在

<?PHP 
$ip = $_SERVER['REMOTE_ADDR']; 
$privacy = ['BOOTSTRAP_CONFIG']; 
$shell = ['BOOTSTRAP_OUTPUT']; 
enter code here 
if $ip == $privacy { 
function $privacy int $ip = "https://"; 
} endif { 
echo $shell 
} 
?> 

那主要是製作引導目錄在PHP中,如!

+3

這其實並不真正回答這個問題 – Andreas 2013-11-14 23:04:58