共用方式為


逐步解說:建立安全性區域 (第 1 部分)

更新:2007 年 11 月

這個逐步解說是依據逐步解說:建立邏輯 DataCenter 圖表所建置 (Build) 的。

在這個逐步解說中,您將會學到如何利用使用者定義的條件約束 (Constraint) 及區域端點條件約束,來建立該區域內所裝載之邏輯伺服器的極特定需求。也會學到如何建立可重複使用且可儲存於工具箱上的區域原型 (Prototype)。第一個步驟是限制可對該區域進行的通訊類型。這個逐步解說會使用您在逐步解說:建立邏輯 DataCenter 圖表中所建立的 PerimeterNetwork 安全性區域 (Security Zone)。

若只允許僅透過通訊埠 443 上 HTTPS 的傳入區域流量

  1. 以滑鼠右鍵按一下 [Internet] 傳入區域端點,然後按一下 [設定和條件約束]檢視 [設定和條件約束編輯器]。

  2. 在 [區域通訊條件約束] 下清除 [DatabaseServerEndpoint] 和 [GenericServerEndpoint] 核取方塊。

    這會讓資料庫或泛型伺服器無法連接至傳入區域端點。

  3. 選取 [WebSiteEndpoint] 下的 [使用者定義] 核取方塊。

  4. 展開 [使用者定義],並選取 [使用者定義] 下的 [WebSite] 核取方塊。

    這可讓您在網站上撰寫與傳入區域端點進行通訊 (連接) 的條件約束。

  5. 按一下編輯器左窗格中的 [WebSite] 標題。在右窗格中,展開 [驗證] 樹狀結構,並選取 [SecureBindings] 核取方塊。

  6. 在 [運算子] 下,選取 [包含一個項目]。

  7. 按一下 [值] 欄位,然後按一下省略符號 (…)。

    [ComplexSetting 集合編輯器] 隨即出現。

  8. 按一下 [加入]。

  9. 在 [Port] 下輸入 443。

  10. 將 [IPAddress] 欄位保持空白。

  11. 按一下 [確定]。

您現在已經將所有通過傳入區域端點所接收的流量,限制為會通過連接埠 443 (其會處理 HTTPS 流量)。下一個步驟是限制允許區域包含的邏輯伺服器類型。

若要限制區域可包含的項目

  1. 選取區域形狀,並檢視 [設定和條件約束編輯器]。

  2. 在 [區域內含項目條件約束] 下,清除 [GenericServer]、[WindowsClient] 和 [Zone] 核取方塊。

這樣做即可限制區域,並讓它無法包含泛型伺服器 (可裝載任何種類之應用程式的伺服器)、Windows 伺服器 (可裝載 Windows 用戶端的伺服器) 或其他區域。如果您嘗試捨棄邏輯 DataCenter 圖表 (Diagram) 之工具箱或其他位置之區域中的任一這些項目,則無法這麼做。

下一個步驟是將資料庫伺服器加入至區域中。

若要將資料庫伺服器加入至區域中

  1. 將 [DatabaseServer] 從 [工具箱] 拖曳至圖表,並放到 [PerimeterNetwork] 區域內。

  2. 將伺服器命名為 [SessionStore]。

    這個伺服器將會用於儲存來自 HardenedIIS Web 伺服器的 SQL 工作階段 (Session) 狀態資訊。

  3. 選取 [SessionStore] 上的提供者端點,按下 ALT 鍵,然後將它連接至 [HardenedIIS]。

下一個步驟是撰寫區域條件約束,讓 Web 伺服器無法裝載 Web 服務。

若要從裝載 Web 服務限制 Web 伺服器

  1. 按一下該區域。

  2. 在 [區域包含項目條件約束] 下展開 [IISWebServer],選取 [使用者定義] 核取方塊、然後選取 [InternetInformationServices] 核取方塊,最後選取 [WebSites] 核取方塊。

  3. 按一下左窗格中的 [WebSites] 節點,並展開 [設定和條件約束編輯器] 右窗格中的 [內容] 節點。

  4. 選取 [ScriptMaps]。

    注意事項:

    如果在編輯器左窗格中選取的是 [WebSite],而非 [WebSites],則 [內容] 下不會顯示 [ScriptMaps] 區段。

  5. 在 [運算子] 下,從清單方塊中選擇 [未包含任何項目]。

  6. 按一下 [值] 欄位,然後按一下省略符號 (…)。

    [ComplexSetting 集合編輯器] 隨即出現。

  7. 按一下 [加入]。

  8. 在 [FileExtension] 下輸入 [.asmx]。

  9. 在 [IncludedVerbs] 下輸入 [GET,HEAD,POST,DEBUG]。

    注意事項:

    正確地輸入這個出現的字串。如果加入空格或變更動詞的順序,則這個條件約束將不會有任何作用。

  10. 將 [Script] 設成等於 [True]。

  11. 在 [ScriptProcessor] 下方輸入 aspnet_isapi.dll 的路徑。(%WINDIR%\Microsoft.NET\Framework\v2.0.40420\aspnet_isapi.dll)

  12. 按一下 [確定]。

這個條件約束會讓 Web 服務無法裝載至周邊網路內的 Web 伺服器上。藉由限制任何 Web 伺服器不可裝載允許要執行特定指令碼對應的網站,即可做到。因為這個條件約束是在區域本身上所撰寫的,所以會用這個條件約束來評估放在該區域內的任何 Web 伺服器,以及裝載在 Web 伺服器上的應用程式。

最後的步驟是建立這個區域的可重複使用版本,而這個版本可從 [工具箱] 中存取,且可與組織內的其他人共用。

若要建立 PerimeterNetwork 區域的可重複使用原型

  1. 按一下該區域。

  2. 從 [圖表] 功能表中,選擇 [加入至工具箱]。

    [加入至工具箱] 對話方塊便會出現。

  3. 在 [名稱] 下輸入 [PerimeterNetwork],再按一下 [確定]。

    [儲存檔案] 對話方塊隨即出現。檔案會儲存為 .lddprototype 檔案,表示它是可在邏輯 DataCenter 設計工具中使用的原型。

  4. 按一下 [儲存]。

  5. 開啟 [工具箱],並將 [PerimeterNetwork] 拖曳至圖表。

透過建立這個原型,即已建立 [PerimeterNetwork] 區域的自訂版本,而這個版本可在您所建立或編輯的任何邏輯 DataCenter 圖表中重複使用。只要建立新的分散式系統方案,就會顯示這個原型。它是設計工具的功能,而不是建立它時所開啟的方案。

其他分散式系統設計工具的使用者只需將此 .lddprototype 檔案複本放到預設原型資料夾中,便可共用這個原型,而預設原型資料夾通常是位於 %ProgramFiles%\Microsoft Visual Studio <versionNumber>\Common7\Tools\DesignerPrototypes\Prototypes 中。如需在邏輯 DataCenter 設計工具中建立可重複使用之原型的詳細資訊,請參閱 HOW TO:從已設定的區域和邏輯伺服器建立自訂原型。如需將這些原型轉散發至其他使用者的詳細資訊,請參閱 HOW TO:匯入或安裝新的自訂原型

後續步驟

在這個逐步解說的第二個部分中,您將學到如何進行下列作業:

  • 設定 [HardenedIIS] 上所裝載之應用程式的原則。

  • 將現有之已設定的 IIS 伺服器設定匯入至 [HardenedIIS]。

  • 評估 Web 服務至 [HardenedIIS] 的部署。

請參閱

工作

逐步解說:建立安全性區域 (第 2 部分)

其他資源

設計和設定邏輯 DataCenter 逐步解說