準備編目使用表單驗證的主機名稱網站

本文內容:

  • 解決方案的先決條件

  • 解決方案的概略簡介

  • 部署解決方案

當設定 Web 應用程式使用以主機名稱命名的網站時,網站架設人員通常會對預設區域使用表單驗證。搜尋伺服器的索引元件 (有時又稱為編目程式) 編目以主機名稱命名,並以一般方式部署的網站,其原因如下:

  • 編目程式無法使用表單驗證進行驗證。

  • 以主機名稱命名的網站不會啟用搜尋伺服器的索引元件,讓其透過輪詢順序中的其他區域進行驗證。

如需輪詢順序與非以主機名稱命名之網站共同運作的詳細資訊,請參閱<規劃驗證方法 (Windows SharePoint Services)>中的<編目內容的驗證需求>一節。

本文描述如何在 Windows SharePoint Services 3.0 中建立解決方案,讓編目程式得以編目以主機名稱命名的網站。此解決方案的元件會:

  • 為您的 Web 應用程式建立兩個區域。

  • 將使用者的要求導向至預設區域 (設定為使用表單驗證)。

  • 將來自內部網路使用者與編目程式的要求導向至內部網路區域 (設定為使用 NTLM 驗證)。

解決方案的先決條件

此解決方案所含之程序需要下列類型的管理員:

  • 網域名稱系統 (DNS) 管理員

  • 伺服器管理員

  • 伺服器陣列管理員

其他需求包括:

  • 兩部 DNS 伺服器:一部網際網路對向的 DNS 伺服器,以及一部內部網路對向的 DNS 伺服器。

  • 兩個不同的靜態 IP 位址:一個屬於網際網路對向的 DNS 伺服器,另一個屬於內部網路對向的 DNS 伺服器。這兩個 IP 位址必須關聯到相同的網站名稱。

此解決方案假設下列情況:

  • 伺服器系統管理員在伺服器陣列中所有的前端網頁伺服器上,以這兩個靜態 IP 位址分別設定不同的網路介面卡 (NIC),或對相同的 NIC 上新增這兩個靜態 IP 位址。

  • Web 應用程式所要使用之搜尋伺服器正在執行中。

  • 已無其他 Web 應用程式使用連接埠 80。

    注意

    使用不同的連接埠實作此解決方案雖然可行 (只要兩個區域使用同一個連接埠),但通常會連接埠 80,如此才不會在以主機名稱命名的網站 URL 中顯示連接埠號碼。

  • 您已在您的環境中執行表單驗證。請注意表單驗證可以透過不同的驗證提供者執行。執行表單驗證時所使用的驗證提供者,決定使用者帳戶的儲存位置。

解決方案的概略簡介

下圖顯示此解決方案的概略簡介。

含表單驗證的以主機名稱命名網站

此解決方案需要兩部 DNS 伺服器。每部 DNS 伺服器會將相同的主機名稱對應到不同的靜態 IP 位址。一般將其稱為分割 DNS 環境。網際網路對向的 DNS 伺服器會解析以主機名稱命名之網站的 URL,並將其對應到您 Web 應用程式的預設區域。使用者會利用此區域存取採用表單驗證的網站。內部網路對向的 DNS 伺服器會將相同的 URL 解析為 IP 位址,並將其對應到您 Web 應用程式的內部網路區域。內部網路使用者及編目程式會利用此區域存取採用 NTLM 驗證的網站。

此對應之所以能夠成功,是因為 Windows SharePoint Services 3.0 利用延伸 Web 應用程式建立新區域時,會為該區域建立網際網路資訊服務 (IIS) 網站。伺服器管理員可使用 IIS 管理員將靜態 IP 位址直接對應到 IIS 網站,而此網站則與特定 Web 應用程式的特定區域相關聯。

高階步驟

下列清單描述此解決方案的高階步驟。

  1. 伺服器陣列管理員會使用管理中心網站在連接埠 80 上建立 Web 應用程式,但不指定其主機標頭。

  2. 伺服器陣列管理員會將此 Web 應用程式的預設區域設定為使用表單驗證。

  3. 伺服器管理員會將自訂 XML 元素新增到適當的 Web.config 檔案,以指定表單驗證所使用之驗證提供者的名稱。

  4. 伺服器管理員會建立名為 stsadm.exe.config 的檔案,讓 Stsadm 命令列公用程式得以決定如何尋找表單驗證所要使用的驗證提供者。

  5. 伺服器陣列管理員會延伸此 Web 應用程式,並指定其主機標頭名稱,以及在內部網路區域上指定 NTLM 驗證。

  6. DNS 管理員會將網站名稱對應到 DNS 的靜態 IP 位址上。

  7. 伺服器管理員可使用 IIS 管理員執行下列動作:

    • 將網際網路對向之 DNS 伺服器的靜態 IP 位址,對應到您 Web 應用程式預設區域 (亦即使用表單驗證的區域) 相關聯的 IIS 網站。

    • 將內部網路對向之 DNS 伺服器的靜態 IP 位址,對應到您 Web 應用程式之內部網路區域 (亦即使用 NTLM 驗證的區域) 相關聯的 IIS 網站,並移除您在步驟 5 指定給此網站的 IIS 主機標頭。

  8. 伺服器管理員可使用 Stsadm 命令列公用程式,建立使用主機標頭的網站集合。

    注意

    您必須用 Stsadm 命令列公用程式指定採用主機標頭之網站集合的 URL。

  9. 伺服器陣列管理員可將權限授與 Web 應用程式,而網站集合管理員則可將權限授與網站集合。

部署方案

請依照下列順序,執行前文所述的解決方案部署程序。

建立 Web 應用程式

  1. 按一下 [開始],依序指向 [所有程式]**** 與 [系統管理工具],然後按一下 [SharePoint 3.0 管理中心]****。

  2. 在 [管理中心] 首頁的上方連結列上,按一下 [應用程式管理]。

  3. 在 [應用程式管理] 頁面上,按一下 [SharePoint Web 應用程式管理] **** 區段的 [建立或擴充 Web 應用程式] 。

  4. 在 [建立或擴充 Web 應用程式] 頁面上,按一下 [新增 SharePoint Web 應用程式]**** 區段中的 [建立新的 Web 應用程式]。

  5. 在 [建立新的 Web 應用程式] 頁面的 [IIS 網站]**** 區段中,設定新 Web 應用程式的下列設定。

    1. 接受預設設定 [建立新的 IIS 網站],然後在 [描述]**** 方塊中輸入網站名稱。

    2. 在 [連接埠] 方塊中輸入 80

    3. 確定 [主機標頭] 方塊為空白。

  6. 在 [應用程式集區] 區段中選取 [使用現有的應用程式集區]****,或接受預設的設定 [建立新的應用程式集區]。若要建立新的應用程式集區,請指定新應用程式集區所要使用的安全性帳戶。

  7. 從 [搜尋伺服器]**** 區段的 [選取 Windows SharePoint Services 搜尋伺服器] 清單中,選取要用於編製此 Web 應用程式索引的搜尋伺服器。

  8. 按一下 [確定]****。

對伺服器陣列之所有前端網頁伺服器執行下列程序。

重新啟動 IIS。

  1. 按一下 [開始],然後按 [執行]****。

  2. 在 [執行] 對話方塊的 [開啟]**** 方塊中輸入 cmd,然後按一下 [確定]。

  3. 在命令視窗中輸入下列命令,然後按 ENTER:****

    iisreset /noforce

  4. 關閉命令提示視窗。

執行下列程序,將 Web 應用程式設定為使用表單驗證。

將預設區域設定為使用表單驗證

  1. 在 [管理中心] 首頁上,按一下 [應用程式管理]。

  2. 在 [應用程式管理] 頁面的 [應用程式安全性]**** 區段中,按一下 [驗證提供者]。

  3. 在 [驗證提供者] 頁面的 [區域]**** 欄中,按一下 [預設]。

  4. 在 [編輯驗證] 頁面的 [驗證類型]**** 區段中,選取 [表單]。

  5. 在 [成員資格提供者名稱] 區段的 [成員資格提供者名稱]**** 方塊中,輸入成員資格提供者的名稱。

  6. 您也可選擇是否要在 [角色管理員名稱] 區段的 [角色管理員名稱]**** 方塊裡,輸入角色管理員的名稱。

  7. 按一下 [儲存]。

新增組態設定至適用的 Web.config 檔案

伺服器管理員必須將 XML 元素新增到前文中所建立之 Web 應用程式預設區域的 Web.config 檔案,以及管理中心網站的 Web.config 檔案。此 XML 元素必須指定驗證提供者的名稱,以及有關貴組織指定與表單驗證並用之驗證提供者的其他資訊 (選擇性)。

請注意,此 XML 元素的內容 (甚至是元素本身的名字) 因組織而異。如需建構此必要 XML 元素的詳細資訊,請參閱<驗證範例 (Windows SharePoint Services)>。

建構必要 XML 元素之後,必須將其新增到伺服器陣列中之適當伺服器上的適當 Web.config 檔案中。請在執行 Windows SharePoint Services Web 應用程式服務之伺服器陣列的每部伺服器上,將必要的 XML 元素新增到 Web 應用程式預設區域相關聯之 IIS 網站的 Web.config 檔案中。在執行管理中心服務之伺服器陣列的每部伺服器上,將必要的 XML 元素新增到管理中心網站的 Web.config 檔案中。

注意

伺服器陣列管理員可以使用管理中心之 [伺服器] 頁面上的 [服務],指定要執行這些服務的伺服器。

將自訂 XML 元素新增到執行 Windows SharePoint Services Web 應用程式服務的伺服器

  1. 登入執行 Windows SharePoint Services Web 應用程式服務之伺服器陣列中的伺服器。

  2. 按一下 [開始],然後按 [執行]****。在 [執行] 對話方塊中輸入 inetmgr,然後按一下 [確定]。

  3. 在 [IIS 管理者] 的主控台樹狀檢視中展開 [本機電腦]**** 節點,再展開 [網站]。

  4. 在前文中所建立之 Web 應用程式預設區域相關聯的網站上按一下滑鼠右鍵,然後按 [檔案總管]****。

  5. 在 [名稱] 欄的 [web.config]**** 上按一下滑鼠右鍵,再選取 [開啟],然後使用 ASCII 文字編輯器 (如記事本) 開啟該檔案。

  6. 緊接在 </configSections> 元素後插入名為 <connectionStrings> 的自訂 XML 元素。

  7. 若要插入選擇性的 <membership> 或 <roleManager> 元素,必須將其插入 <system.web> 元素內。

  8. 儲存並關閉 Web.config 檔案。

  9. 對執行 Windows SharePoint Services Web 應用程式服務之伺服器陣列中的其他伺服器重複步驟 1 到 7。

您必須是管理員群組的成員,才可執行下列程序。

將自訂 XML 元素新增到執行管理中心服務的伺服器

  1. 登入執行管理中心服務之伺服器陣列中的伺服器。

  2. 按一下 [開始],然後按 [執行]。在 [執行] 對話方塊中輸入 inetmgr,然後按一下 [確定]。

  3. 在 [IIS 管理者] 的主控台樹狀檢視中展開 [本機電腦]**** 節點,再展開 [網站]。

  4. 在管理中心網站上按一下滑鼠右鍵,然後按 [檔案總管]****。此網站的預設名稱為 SharePoint Central Administration v3。

  5. 在 [名稱] 欄的 [web.config]**** 上按一下滑鼠右鍵,再按 [開啟],然後使用 ASCII 文字編輯器 (如記事本) 開啟該檔案。

  6. 緊接在 </configSections> 元素後插入名為 <connectionStrings> 的自訂 XML 元素。

  7. 若要使用自訂的 <membership> 或 <roleManager> 元素,必須將其插入 <system.web> 元素內。

  8. 儲存並關閉 Web.config 檔案。

  9. 對執行管理中心服務之伺服器陣列中的其他伺服器上重複步驟 1 到 7。

使用下列程序建立名為 stsadm.exe.config 的檔案。此檔案必須包含 XML 元素,且其必須與新增到 Web.config 檔案中的元素相同。此檔案讓 Stsadm 命令列公用程式得以決定如何尋找所要使用的驗證提供者。

建立 stsadm.exe.config 檔案

  1. 開啟 ASCII 文字編輯器 (如記事本),並新增下列文字:

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <configuration>
    <system.web>
    </system.web>
    </configuration>
    
  2. 在 <configuration> 標籤之後,插入與您在前一個步驟中新增到 Web.config 檔案中的相同自訂 XML 元素 <connectionStrings>。

  3. 若要使用自訂的 <membership> 或 <roleManager> 元素,必須將其插入 <system.web> 元素內。

  4. 儲存檔案,並將其命名為 stsadm.exe.config。

  5. 您必須確認所使用的文字編輯器不會在檔案名稱中新增 .txt 副檔名。若發生此狀況,請在繼續下一個步驟前,先移除 .txt 副檔名。

  6. 將 stsadm.exe.config 檔案複製到伺服器陣列中,伺服器陣列管理員可能會使用 stsadm.exe 公用程式之各部伺服器的下列資料夾中:

    系統磁碟:\Program Files\Common Files\Microsoft Shared\web server extensions\12\BIN

    建議將此檔案複製到伺服器陣列中的每部伺服器。

擴充 Web 應用程式

使用下列程序可擴充 Web 應用程式,以建立使用 NTLM 驗證的新區域。

擴充 Web 應用程式

  1. 在 [管理中心] 首頁上,按一下 [應用程式管理]****。

  2. 在 [應用程式管理] 頁面上,按一下 [SharePoint Web 應用程式管理] 區段的 [建立或擴充 Web 應用程式] ****。

  3. 在 [建立或擴充 Web 應用程式] 頁面上,按一下 [新增 SharePoint Web 應用程式] 區段的 [擴充現有的 Web 應用程式]****。

  4. 在 [擴充 Web 應用程式至其他 IIS 網站] 頁面的 [Web 應用程式] 區段中,於 [Web 應用程式]**** 功能表中按一下 [變更 Web 應用程式]。

  5. 在 [選取 Web 應用程式] 頁面的清單中,選取您要擴充的 Web 應用程式。

  6. 在 [IIS 網站]**** 區段中,執行下列作業:

    1. 在 [描述] 方塊中,輸入新網站的描述。

    2. 在 [連接埠]**** 方塊中輸入 80

    3. 在 [主機標頭] 方塊中輸入主機標頭名稱。

  7. 在 [安全性設定]**** 區段中,確定選取 [NTLM]。

  8. 在 [負載平衡 URL]**** 區段中,選取您要使用的區域,(在此範例中是 [內部網路])。

    注意

    內部網路對向的 DNS 伺服器必須能夠解析此負載平衡 URL,並將其對應到您指定給設定要使用 NTLM 驗證之網站的靜態 IP 位址。

  9. 按一下 [確定]。

對伺服器陣列之所有前端網頁伺服器執行下列程序。

重新啟動 IIS。

  1. 按一下 [開始]****,然後按 [執行]。

  2. 在 [執行] 對話方塊的 [開啟]**** 方塊中輸入 cmd,然後按一下 [確定]。

  3. 在命令提示中輸入如下,然後按 ENTER:

    iisreset /noforce

  4. 關閉命令提示視窗。

將網站名稱對應到 DNS 中的 IP 位址

以主機名稱命名的網站會讓伺服器群組管理員選擇其網站 URL 中所要使用的名稱。請注意,該名稱 (亦即 URL) 在網域上必須是唯一的名稱。網際網路對向的 DNS 管理員必須將伺服器陣列管理員所選的網站名稱對應到適當的靜態 IP 位址。在稍後的步驟中,伺服器管理員會將此靜態 IP 位址對應到 IIS 網站 (已設定為使用此 Web 應用程式所用的預設區域)。

同樣地,內部網路對向的 DNS 管理員亦須將相同的網站名稱對應到不同的靜態 IP 位址。在稍後的步驟中,伺服器管理將會將此靜態 IP 位址對應到 IIS 網站 (已設定為使用此 Web 應用程式所用的內部網路區域)。此外,此 DNS 管理員亦須將伺服器陣列管理員於擴充 Web 應用程式時所用的主機標頭名稱對應到此靜態 IP 位址。此主機名稱雖會在稍後的程序中移除,但編目程式仍會使用此主機名稱在內部網路區域上存取 Web 應用程式。

伺服器管理員必須對伺服器陣列中的每一部前端網頁伺服器執行下列程序。

將靜態 IP 位址對應到網站

  1. 按一下 [開始],依序指向 [所有程式]**** 與 [系統管理工具],然後按一下 [網際網路資訊服務 (IIS) 管理員]****。

  2. 在主控台樹狀檢視中,依序展開 [本機電腦] 節點及 [網站]****,再於您設定要使用表單驗證的網站上按一下滑鼠右鍵,然後按一下 [內容]。

  3. 在 [內容]**** 對話方塊中,從 [網站] 索引標籤之 [網站識別碼]**** 區段的 [IP 位址] 清單中,選取要對應到客戶對向之網站的 IP 位址。

  4. 按一下 [確定]**** 關閉 [內容] 對話方塊。

  5. 在主控台樹狀檢視中,於您設定要使用 NTML 驗證的網站上按一下滑鼠右鍵,然後按一下 [內容]****。

  6. 在 [內容] 對話方塊中,於 [網站]**** 索引標籤之 [網站識別碼] 區段中按一下 [進階]****。

  7. 在 [進階網站識別碼] 對話方塊的 [在這個網站使用多重識別碼]**** 區段中,選取包含您為使用 NTLM 驗證之網站所設定的主機標頭名稱該列,然後按一下 [編輯]。

  8. 在 [新增/編輯網站識別碼]**** 對話方塊的 [IP 位址] 清單中,選取您要對應到使用 NTLM 驗證網站的 IP 位址。

  9. 在 [主機標頭值]**** 方塊中輸入主機標頭名稱。此即是您指定給設定要使用 NTLM 驗證之網站的主機標頭名稱。您將會在下一個程序中使用此名稱。

  10. 在 [主機標頭值] 方塊中刪除主機標頭名稱,然後按一下 [確定]****。

  11. 按一下 [確定] 關閉 [進階網站識別碼]**** 對話方塊。

  12. 按一下 [確定] 關閉 [內容]**** 對話方塊。

  13. 關閉 IIS 管理員。

使用下列程序可建立 Web 應用程式的網站集合。您必須是網站管理員,才可執行下列步驟。

建立 Web 應用程式的網站集合

  1. 按一下 [開始],然後按 [執行]****。

  2. 在 [執行] 對話方塊的 [開啟]**** 方塊中輸入 cmd,然後按一下 [確定]。

  3. 瀏覽至下列資料夾:

    系統磁碟:\Program Files\Common Files\Microsoft Shared\web server extensions\12\BIN

    其中,系統磁碟是 Windows SharePoint Services 3.0 安裝所在的磁碟機。

  4. 在命令視窗中輸入下列命令,然後按 ENTER:

    stsadm.exe -o createsite -url http://<HostNamedSiteAddress>

    -ownerlogin <ProviderName:UserName> -owneremail <username@example.com>

    -hostheaderwebapplicationurl http://<WebApplicationUrl>

下表說明上一個程序之步驟 4 中所使用的變數。

變數 描述

HostNamedSiteAddress

伺服器陣列管理員選擇供使用者用以存取網站集合之最上層網站的 URL。DNS 管理員會將此名稱對應到用以存取您 Web 應用程式之預設區域的 IP 位址。

ProviderName:UserName

使用主機標頭之網站集合的主要擁有者。

username@example.com

網站集合擁有者的電子郵件地址。

WebApplicationUrl

Web 應用程式之預設區域的 URL。您可以在管理中心的 [Web 應用程式清單] 頁面中找到此位址。

授與使用者權限

您必須先授與使用者您網站的適當權限,其才能夠存取您在 Web 應用程式上所建立的網站。若要管理 Web 應用程式層級的安全性,伺服器陣列管理員可以建立原則,授與 Web 應用程式的權限。若要管理網站集合層級與較低的層級的權限,網站集合管理員也可改將使用者加入適當的 SharePoint 群組。

如需使用原則授與使用者權限的相關資訊,請參閱說明系統中的<透過原則管理授權>。如需管理網站集合與較低層級之權限的詳細資訊,請參閱<規劃網站和內容安全性 (Windows SharePoint Services)>。

下載本書

本主題隨附於下列可下載的叢書中,以便於閱讀與 列印:

請參閱<Windows SharePoint Services 3.0 的可下載內容>上提供的完整叢書清單。