設定 Kerberos 驗證:核心設定 (SharePoint Server 2010)

 

適用版本: SharePoint Server 2010

上次修改主題的時間: 2017-01-18

在第一個案例中,您會設定兩個 SharePoint Server 2010 Web 應用程式,以使用 Kerberos 通訊協定來驗證內送的用戶端要求。為了示範,一個 Web 應用程式會設定為使用標準連接埠 (80/443),另一個則使用非預設連接埠 (5555)。此案例將作為所有後續案例的基礎,並假設已完成下面的活動。

重要

必須使用 Kerberos 驗證,以傳統 Windows 驗證來設定 Web 應用程式,以確保案例的運作如同預期。Windows 宣告驗證可以用在某些案例,但是不會產生下面案例所描述的結果。

在此案例中,您可以執行下列事項:

  • 以使用 Kerberos 通訊協定來驗證的預設區域來設定兩個 Web 應用程式

  • 建立兩個測試網站集合,兩個 Web 應用程式中各一個

  • 確認 Web 應用程式的 IIS 設定

  • 確認用戶端可以用 Web 應用程式來驗證,並確定是使用 Kerberos 通訊協定來進行驗證

  • 設定 RSS 檢視器網頁組件,以在本機和遠端 Web 應用程式中顯示 RSS 摘要

  • 編目每個 Web 應用程式,並測試每個測試網站集合中的搜尋內容

設定檢查清單

設定區域 描述

DNS

為 Web 應用程式網路負載平衡 (NLB) 虛擬 IP (VIP) 註冊「DNS A 記錄」

Active Directory

為 Web 應用程式的 IIS 應用程式集區建立服務帳戶

在為 Web 應用程式的 IIS 應用程式集區建立的服務帳戶上,為 Web 應用程式註冊服務主要名稱 (SPN)

為服務帳戶設定 Kerberos 限制委派

SharePoint Web 應用程式

建立 SharePoint Server 受管理帳戶

建立 SharePoint Search Service 應用程式

建立 SharePoint Web 應用程式

IIS

驗證已啟用 Kerberos 驗證

確認已停用核心模式驗證

安裝 SSL 的憑證

Windows 7 用戶端

確定 Web 應用程式 URL 在內部網路區域中,或是在設定為以整合式 Windows 驗證自動驗證的區域中

防火牆設定

開啟防火牆連接埠,以允許預設及非預設連接埠上的 HTTP 流量進入

確定用戶端可以連線至 Active Directory 上的 Kerberos 連接埠

測試瀏覽器驗證

確認驗證在瀏覽器中的運作正確

確認網頁伺服器安全性事件記錄檔的登入資訊

使用協力廠商工具來確認 Kerberos 驗證的設定正確

測試 SharePoint Server 搜尋索引及查詢

確認索引伺服器的瀏覽器存取權

上傳範例內容並執行編目

測試搜尋

測試 WFE 委派

設定每個網站集合上的 RSS 摘要來源

新增 RSS 檢視網頁組件至每個網站集合的首頁

逐步式設定指示

設定 DNS

在您的環境中設定 Web 應用程式的 DNS。在此範例中,我們有 2 個 Web 應用程式:http://portal 與 http://teams:5555,都是解析至相同的 NLB VIP (192.168.24.140/24)

如需如何設定 DNS 的一般資訊,請參閱管理 DNS 記錄 (可能為英文網頁)

SharePoint Server Web 應用程式

http://portal — 為入口網站 Web 應用程式設定新的「DNS A 記錄」。在此範例中,我們將主機「入口網站」設定為解析至負載平衡的 VIP。

DNS 記錄的圖像

http://teams:5555 — 為小組 Web 應用程式設定新的「DNS A 記錄」。

DNS 記錄的圖像

注意

請務必確定 DNS 項目是「A 記錄」,而不是 CNAME 別名,才能在具有以主機標頭和個別專用服務帳戶執行之多個 Web 應用程式的環境中,讓 Kerberos 驗證順利運作。有關將 CNAME 用於啟用 Kerberos 之 Web 應用程式的已知問題,請參閱<Kerberos 設定已知的問題 (SharePoint Server 2010)>,以取得說明。

設定 Active Directory

接著,您要為環境中的 Web 應用程式設定 Active Directory 帳戶。最佳作法是將每個 Web 應用程式設定為以其本身的安全性內容 (應用程式集區身分識別),在其本身的 IIS 應用程式集區中執行。

SharePoint 服務應用程式服務帳戶

在我們的範例中,我們有兩個 SharePoint Server Web 應用程式,以其本身的應用程式集區身分識別,在兩個分開的 IIS 應用程式集區中執行。

Web 應用程式 (預設區域) IIS 應用程式集區身分識別

http://portal

vmlab\svcPortal10App

http://teams:5555

vmlab\ svcTeams10App

服務主要名稱 (SPN)

針對每個服務帳戶,設定一組服務主要名稱,對應至指派給各 Web 應用程式的 DNS 主機名稱。

使用 SetSPN (Windows Server 2008 中的命令列工具) 來設定新的服務主要名稱。如需如何使用 SetSPN 的完整說明,請參閱 Setspn (可能為英文網頁)。若要了解 Windows Server 2008 中的 SetSPN 改良功能,請參閱關懷、共享與成長!Windows Server 2008 上的 SETSPN.EXE 新功能 (可能為英文網頁)

無論連接埠號碼為何,所有 SharePoint Server Web 應用程式皆使用下列 SPN 格式:

  • HTTP/<DNS 主機名稱>

  • HTTP/<DNS FQDN>

範例:

  • HTTP/portal

  • HTTP/portal.vmlab.local

針對在非預設連接埠 (80/443 以外的連接埠) 執行的 Web 應用程式,請註冊其他含連接埠號碼的 SPN:

  • HTTP/<DNS 主機名稱>:<連接埠>

  • HTTP/<DNS FQDN>:<連接埠>

範例:

  • HTTP/teams:5555

  • HTTP/teams.vmlab.local:5555

注意

附錄中會說明為什麼要針對在非預設連接埠 (80、443) 上執行的 HTTP 服務,建議設定包含或不包含連接埠的 SPN。在技術上,若要參照在非預設連接埠上執行的 HTTP 服務,正確的方法是將連接埠號碼內含在 SPN 中,但是因為附錄中所描述的已知問題,我們也需要設定不含連接埠的 SPN。請注意,在我們的範例中,不含 teams Web 應用程式連接埠的 SPN,不表示將會使用預設連接埠 (80、443) 來存取服務。

在我們的範例中,我們針對在先前步驟中建立的兩個帳戶,設定了下列服務主要名稱:

DNS 主機 IIS 應用程式集區身分識別 服務主要名稱

Portal.vmlab.local

vmlab\svcPortal10App

HTTP/portal

HTTP/portal.vmlab.local

Teams.vmlab.local

vmlab\ svcTeams10App

HTTP/Teams

HTTP/Teams.vmlab.local

HTTP/Teams:5555

HTTP/Teams.vmlab.local:5555

為了建立服務主要名稱,已執行下列命令:

SetSPN -S HTTP/Portal vmlab\svcportal10App

SetSPN -S HTTP/Portal.vmlab.local vmlab\svcportal10App

SetSPN -S HTTP/Teams vmlab\svcTeams10App

SetSPN -S HTTP/Teams.vmlab.local vmlab\ svcTeams10App

SetSPN -S HTTP/Teams:5555 vmlab\ svcTeams10App

SetSPN -S HTTP/Teams.vmlab.local:5555 vmlab\ svcTeams10App

重要

即使 Web 應用程式使用 SSL,也請勿設定含 HTTPS 的服務主要名稱。

在我們的範例中, 我們使用了 Windows Server 2008 中引進的新命令列參數 -S,可先檢查 SPN 是否存在,再於帳戶上建立 SPN。如果 SPN 已存在,就不會建立新的 SPN,而且您會看到錯誤訊息。

如果發現重複的 SPN,則必須解決此問題,您可以為 Web 應用程式使用不同的 DNS 名稱,藉以變更 SPN,或是從發現的帳戶中移除現有的 SPN。

重要

在刪除現有的 SPN 之前,請確定已不再需要它,否則,您可能會破壞環境中其他應用程式的 Kerberos 驗證。

服務主要名稱及 SSL

Kerberos 服務主要名稱與 http Web 應用程式的 URL 經常會搞混,因為 SPN 和 URI 格式的語法很相似,但一定要了解這兩個是非常不同且獨特的東西。Kerberos 服務主要名稱是要用來識別服務,而且當該服務是 http 應用程式時,無論是否以 SSL 來存取服務,服務配置都是 "HTTP"。這表示,即使您使用 "https://someapp" 來存取 Web 應用程式,都不要也不應該以 HTTPS 來設定服務主要名稱,例如 "HTTPS/someapp"。

為電腦及服務帳戶設定 Kerberos 限制委派

依據案例,SharePoint Server 2010 中的某些功能可能需要限制委派,才能正常運作。例如,如果 RSS 檢視器網頁組件設定為顯示已驗證來源的 RSS 摘要,則需要委派才能使用來源摘要。在其他情況下,可能會需要設定限制委派,才能讓服務應用程式 (例如 Excel Services) 將用戶端身分識別委派給後端系統。

在此案例中,我們將會設定 Kerberos 限制委派,讓 RSS 檢視器網頁組件可以從遠端 Web 應用程式,讀取安全的本機 RSS 摘要及安全的遠端 RSS 摘要。在後面的案例中,我們將會為其他 SharePoint Server 2010 服務應用程式設定 Kerberos 限制委派。

下列圖表概述將在此案例中設定的項目:

案例圖表

我們有兩個 Web 應用程式,其各有自己的網站集合,以及管理兩個 RSS 檢視器網頁組件的網頁。這兩個 Web 應用程式各有一個預設區域設定為使用 Kerberos 驗證,因此來自這些網站的所有摘要都會需要驗證。在各網站中,一個 RSS 檢視器會設定為從清單讀取本機 RSS 摘要,而另一個會設定為在遠端網站中讀取驗證摘要。

為完成此作業,將會設定 Kerberos 限制委派,以允許 IIS 應用程式集區服務帳戶之間的委派。下列圖表概述所需的限制委派路徑:

應用程式集區委派圖表

請記得,我們是使用指派給 IIS 應用程式集區身分識別的服務主要名稱 (SPN),依服務名稱來識別 Web 應用程式。必須允許處理要求的服務帳戶將用戶端身分識別委派給所指定的服務。我們要設定的所有限制委派路徑如下:

主要類型 主要名稱 委派給服務

使用者

svcPortal10App

HTTP/Portal

HTTP/Portal.vmlab.local

HTTP/Teams

HTTP/Teams.vmlab.local

HTTP/Teams:5555

HTTP/Teams.vmlab.local:5555

使用者

svcTeams10App

HTTP/Portal

HTTP/Portal.vmlab.local

HTTP/Teams

HTTP/Teams.vmlab.local

HTTP/Teams:5555

HTTP/Teams.vmlab.local:5555

注意

從服務設定委派予其本身看似多餘 (例如入口網站服務帳戶委派給入口網站服務應用程式),但是如果您有多部伺服器執行該服務,就會需要這麼做。當一部伺服器需要委派給執行相同服務的另一部伺服器時,就可以這麼做;例如,WFE 要以將本機 Web 應用程式用作資料來源的 RSS 檢視器來處理要求。依據伺服器陣列拓撲及設定,RSS 要求有可能是由需要委派才能正確運作的不同伺服器來提供服務。

若要設定委派,您可以使用 Active Directory 使用者及電腦嵌入式管理單元。以滑鼠右鍵按一下每個服務帳戶,並開啟屬性對話方塊。在對話方塊中,您會看到委派的索引標籤 (請注意,該物件要有已指派的 SPN,才會出現此索引標籤;電腦預設會有 SPN)。在 [委派] 索引標籤上,選取 [信任這個使用者,但只委派指定的服務],然後選取 [使用任何驗證通訊協定]。

按一下 [新增] 按鈕,以新增要允許使用者 (服務帳戶) 委派的服務。若要選取 SPN,您要查閱套用該 SPN 的物件。在我們的案例中,我們要嘗試委派給 HTTP 服務,意思就是,我們要搜尋在上個步驟中,被指派 SPN 之 IIS 應用程式集區的服務帳戶。

在 [選取使用者或電腦] 對話方塊上,按一下 [使用者及電腦],搜尋 IIS 應用程式集區服務帳戶 (在我們的範例中為 vmlab\svcPortal10Appvmlab\svcTeams10App),然後按一下 [確定]。

系統會提示您選取由服務主要名稱指派給物件的服務。

在 [新增服務] 對話方塊上,按一下 [全選],然後按一下 [確定]。請注意,當您回到委派對話方塊時,實際上並不會看到所有選取的 SPN。若要查看所有 SPN,請檢查左下角的 [展開] 核取方塊。

針對環境中需要委派的每個服務帳戶,執行這些步驟。在我們的範例中,這就是服務帳戶清單

設定 SharePoint Server

設定好 Active Directory 和 DNS 之後,緊接著就要在 SharePoint Server 2010 伺服器陣列中建立 Web 應用程式。本文件假設這時候已完成安裝 SharePoint Server,並已設定伺服器陣列拓撲及支援架構,例如負載平衡。如需如何安裝及設定 SharePoint 伺服器陣列的詳細資訊,請參閱:部署 SharePoint Server 2010

設定受管理服務帳戶

在建立 Web 應用程式之前,先將在前面步驟中建立的服務帳戶設定成 SharePoint Server 中的受管理服務帳戶。事先這麼做可讓您在建立 Web 應用程式本身時,跳過此步驟。

設定受管理帳戶

  1. 在 SharePoint 管理中心內,按一下 [安全性]。

  2. 在 [一般安全性] 下,按一下 [設定受管理帳戶]:

  3. 按一下 [註冊受管理帳戶],為每個服務帳戶建立受管理帳戶。在此範例中,我們建立了五個受管理服務帳戶:

    帳戶 用途

    VMLAB\svcSP10Search

    SharePoint Search Service 帳戶

    VMLAB\svcSearchAdmin

    SharePoint Search Administration Service 帳戶

    VMLAB\svcSearchQuery

    SharePoint Search Query Service 帳戶

    VMLAB\svcPortal10App

    Portal Web App IIS 應用程式集區帳戶

    VMLAB\svcTeams10App

    Teams Web App IIS 應用程式集區帳戶

    注意

    SharePoint Server 2010 中的受管理帳戶與 Windows Server 2008 R2 Active Directory 中的受管理服務帳戶不同。

建立 SharePoint Server Search Service 應用程式

在此範例中,我們將會設定 SharePoint Server Search Service 應用程式,以確保新建的 Web 應用程式可供順利編目及搜尋。建立新的 SharePoint Server Search Web 應用程式,並將 Search, Query and Administration Services 放在應用程式伺服器上 (在我們的範例中為 vmSP10App01)。如需如何設定 Search Service 應用程式的詳細說明,請參閱逐步說明:佈建 Search Service 應用程式 (可能為英文網頁)

注意

將所有 Search Services 放在單一應用程式伺服器上僅作示範之用。SharePoint Server 2010 Search Topology 選項及最佳作法不在本文件的討論範圍內。

建立 Web 應用程式

瀏覽至管理中心,並導覽至 [應用程式管理] 區段中的 [管理 Web 應用程式]。在工具列中選取 [新增],並建立您的 Web 應用程式。請確定已設定下列項目:

  • 選取 [傳統模式驗證]。

  • 為每個 Web 應用程式設定連接埠和主機標頭。

  • 選取 [交涉] 作為驗證提供者。

  • 在應用程式集區下,選取 [建立新的應用程式集區],並選取在上個步驟建立的受管理帳戶。

在此範例中,以下列設定建立了兩個 Web 應用程式:

設定 http://Portal Web 應用程式 http://Teams Web 應用程式

驗證

傳統模式

傳統模式

IIS 網站

名稱:SharePoint – Portal – 80

連接埠:80

主機標頭:Portal

名稱:SharePoint – Teams – 5555

連接埠:80

主機標頭:Teams

安全性設定

驗證提供者:交涉

允許匿名:否

使用安全通訊端層:否

驗證提供者:交涉

允許匿名:否

使用安全通訊端層:否

公用 URL

http://Portal:80

http://Teams:5555

應用程式集區

名稱:SharePoint – Portal80

安全性帳戶:vmlab\svcPortal10App

名稱:SharePoint – Teams5555

安全性帳戶:vmlab\svcTeams10App

建立新的 Web 應用程式時,也會建立新的區域,即預設區域,設定為使用 Windows 驗證提供者。先選取 Web 應用程式,然後按一下工具列中的 [驗證提供者],您就會看到提供者及其在 Web 應用程式管理中的區域設定。驗證提供者對話方塊會列出所選 Web 應用程式的所有區域,以及各區域的驗證提供者。只要選取區域,您就會看到該區域的驗證選項。

如果在建立 Web 應用程式時,誤設了 Windows 設定,並選取了 NTLM,您可以使用該區域的編輯驗證對話方塊,將區域從 NTLM 切換為 [交涉]。如果選取 [傳統模式] 作為驗證模式,您就必須將 Web 應用程式延伸至新的 IIS 網站,或是刪除並重建 Web 應用程式,以建立新區域。

建立網站集合

若要測試驗證是否正確運作,您需要在每個 Web 應用程式中各建立至少一個網站集合。網站集合的建立及設定並不會影響 Kerberos 功能,所以請遵循建立網站集合 (SharePoint Foundation 2010) 中,有關如何建立網站集合的現有指導。

就此範例而言,設定了兩個網站集合:

Web 應用程式 網站集合路徑 網站集合範本

http://portal

/

發佈入口網站

http://teams:5555

/

小組網站

建立備用存取對應

入口網站 Web 應用程式將會設定為使用 HTTPS 及 HTTP,以示範委派如何與 SSL 保護的服務搭配運作。若要設定 SSL,入口網站 Web 應用程式需要適用於 HTTPS 端點的第二個 SharePoint Server 備用存取對應 (AAM)。

設定備用存取對應

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

  2. 在 [Web 應用程式] 底下,按一下 [設定備用存取對應]。

  3. 在 [選取備用存取對應集合] 下拉式清單中,選取 [變更備用存取對應集合]。

  4. 選取入口網站 Web 應用程式。

  5. 按一下頂端工具列中的 [編輯公用 URL]。

  6. 在可用區域中,新增 Web 應用程式的 https URL。此 URL 將會是您在下個步驟中建立的 SSL 憑證名稱。

  7. 按一下 [儲存]。

    您現在應該會在 Web 應用程式的區域清單中看到 HTTPS URL。

IIS 設定

安裝 SSL 憑證

針對使用 SSL 的每個 Web 應用程式,您都需要在管理 Web 應用程式服務的每部 SharePoint Server 上設定 SSL 憑證。同樣地,有關如何設定 SSL 憑證及憑證信任的主題並不在本文件的範圍內。請參閱本文件中的<SSL 設定>一節,以取得在 IIS 中設定 SSL 憑證的相關資料參照。

確認已啟用 Kerberos 驗證

確認網站上已啟用 Kerberos 驗證

  1. 開啟 IIS 管理員。

  2. 選取要確認的 IIS 網站。

  3. 在 [功能檢視] 中的 IIS 底下,按兩下 [驗證]。

  4. 選取 [Windows 驗證] (應已啟用)。

  5. 在右手邊的 [動作] 底下,選取 [提供者]。確認 [交涉] 位於清單頂端。

確認已停用核心模式驗證

SharePoint Server 2010 不支援核心模式驗證。 依預設,所有 SharePoint Server Web 應用程式都應在其對應的 IIS 網站上停用核心模式驗證。即使是 Web 應用程式已設定在現有 IIS 網站上的情況下,當 SharePoint Server 在現有 IIS 網站上佈建新的 Web 應用程式時,都會停用核心模式驗證。

確認已停用核心模式驗證

  1. 開啟 IIS 管理員。

  2. 選取要確認的 IIS 網站。

  3. 在 [功能檢視] 中的 IIS 底下,按兩下 [驗證]。

  4. 選取 [Windows 驗證] (應已啟用)。

  5. 按一下 [進階設定]。

  6. 確認 EAP 及核心模式驗證已停用。

設定防火牆

在測試驗證之前,請確定用戶端可以在所設定的 HTTP 連接埠上存取 SharePoint Server Web 應用程式。另外,也請確定用戶端可以向 Active Directory 驗證,以及透過標準 Kerberos 連接埠,向 KDC 要求 Kerberos 票證。

開啟防火牆連接埠,以允許預設及非預設連接埠上的 HTTP 流量進入

通常您必須在每個前端 Web 上設定防火牆,以允許透過連接埠 TCP 80 及 TCP 443 的內送要求。開啟具有進階安全性的 Windows 防火牆,並瀏覽至下列輸入規則:

  • World Wide Web Services (HTTP 傳入流量)

  • World Wide Web 服務 (HTTPS 傳入流量)

確定已在您的環境中開啟適當的連接埠。在我們的範例中,我們會存取 SharePoint Server over HTTP (連接埠 80),所以已啟用此規則。

此外,我們必須開啟在我們範例中所使用的非預設連接埠 (TCP 5555)。如果您有在非預設連接埠上執行的網站,則也必須設定自訂規則,以允許那些連接埠上的 HTTP 流量。

確定用戶端可以連線至 Active Directory 角色上的 Kerberos 連接埠

若要使用 Kerberos 驗證,用戶端必須透過 UDP 或 TCP 連接埠 88,向金鑰發佈中心 (KDC) 要求票證授與票證 (TGT) 及服務票證 (ST)。依預設,當您在 Windows Server 2008 及更新版本中安裝 Active Directory 角色時,該角色會設定下列內送規則來允許通訊:

  • Kerberos 金鑰發佈中心 – PCR (TCP-In)

  • Kerberos 金鑰發佈中心 – PCR (UDP-In)

  • Kerberos 金鑰發佈中心 (TCP-In)

  • Kerberos 金鑰發佈中心 (UDP-In)

在您的環境中,確定這些規則已啟用,而且用戶端可以透過連接埠 88 連線至 KDC (網域控制站)。

測試瀏覽器驗證

設定 Active Directory、DNS 及 SharePoint Server 之後,您現在可以瀏覽 Web 應用程式,以測試 Kerberos 驗證設定是否正確。在瀏覽器中測試時,請確定符合下列條件:

  1. 測試使用者已登入加入 SharePoint Server 安裝所在網域的 Windows XP、Vista 或 Windows 7 電腦,或登入 SharePoint Server 網域所信任的網域。

  2. 測試使用者是使用 Internet Explorer 7.0 或更新版本 (SharePoint Server 2010 已不再支援 Internet Explorer 6.0;請參閱規劃瀏覽器支援 (SharePoint Server 2010))。

  3. 瀏覽器已啟用整合式 Windows 驗證。在 [網際網路選項] 底下的 [進階] 索引標籤中,確定已啟用 [安全性] 區段中的 [啟用整合式 Windows 驗證*]。

  4. 近端內部網路設定為自動登入用戶端。在 [網際網路r 選項] 底下的 [安全性] 索引標籤中,選取 [近端內部網路],並按一下 [自訂等級] 按鈕。向下捲動並確定已選取 [只在近端內部網路區域自動登入]。

    注意

    其他區域也可以設定自動登入,但是 IE 安全性區域最佳作法的主題不在本文件的範圍內。就此示範而言,內部網路區域將會用於所有測試。

  5. 確定已選取 [自動偵測內部網路] (在 [網際網路選項]->[安全性]->[內部網路區域]->[網站] 中)。

  6. 如果您是使用完整網域名稱來存取 SharePoint Server Web 應用程式,請確定 FQDN 內含在內部網路區域中,明確地或包含相對路徑 (例如,“*.vmlab.local”)。

判斷是否已使用 Kerberos 驗證的最簡單方法,就是登入測試工作站,並導覽至有問題的網站。如果沒有提示使用者提供認證,且網站轉譯正確,您就可以假設整合式 Windows 驗證正在運作中。下個步驟是要判斷是否已使用交涉通訊協定來協議將 Kerberos 驗證作為要求的驗證提供者。執行的方法如下:

前端 Web 安全性記錄檔

如果 Kerberos 驗證運作正確,您會在前端 Web 上的安全性事件記錄檔中,看到事件識別碼 = 4624 的登入事件。在這些事件的一般資訊中,您應該會看到登入電腦的安全性識別碼,以及所使用的登入程序,應為 Kerberos

KList

KList 是 Windows Server 2008 及 Windows Server 2008 R2 預設安裝中內含的命令列公用程式,可用來列出及清除指定電腦上的 Kerberos 票證。若要執行 KList,請在 Windows Server 2008 中開啟命令提示字元,並輸入 Klist

如果您想要清除票證快取,請執行 Klist 搭配選用的 purge 參數:Klist purge

KerbTray

KerbTray 是隨附於 Windows Server 2000 資源套件工具的免費公用程式,可以安裝在用戶端電腦上,以檢視 Kerberos 票證快取。請從 Windows 2000 資源套件工具:Kerbtray.exe (可能為英文網頁) 下載及安裝。安裝好之後,再執行下列動作:

  1. 導覽至使用 Kerberos 驗證的網站。

  2. 執行 KerbTray.exe。

  3. 以滑鼠右鍵按一下系統匣中的 kerb tray 圖示,並選取 [列出票證],以檢視 Kerberos 票證快取。

  4. 驗證您驗證之 Web 應用程式的服務票證在所快取的票證清單中。在我們的範例中,我們導覽至已註冊下列 SPN 的下列網站:

    網站 URL SPN

    http://portal

    HTTP/Portal.vmlab.local

    http://teams:5555

    HTTP/Teams.vmlab.local

Fiddler

Fiddler 是免費的 HTTP 流量分析器,可從下列位置下載:http://www.fiddlertool.com/ (可能為英文網頁)。在 Fiddler 中,您會看到用戶端與伺服器交涉 Kerberos 驗證,而且您可以在每個要求的 HTTP 標頭中,看到用戶端傳送 Kerberos 服務票證至伺服器。若要使用 Fiddler 來驗證 Kerberos 驗證運作正確,請執行下列動作:

  1. 在用戶端電腦上下載及安裝 Fiddler (www.fiddlertool.com (可能為英文網頁))。

  2. 登出桌面,再重新登入,以清除連接至網頁伺服器的任何快取連線,並強制瀏覽器交涉 Kerberos 驗證,並執行驗證信號交換。

  3. 啟動 Fiddler。

  4. 開啟 Internet Explorer,並瀏覽至 Web 應用程式 (在我們的範例中為 http://portal)。

您應該會在 Fiddler 中看到對 SharePoint Server 前端 Web 的要求及回應。

第一個 HTTP 401 是瀏覽器嘗試在沒有驗證的情況下進行 GET 要求。在回應中,伺服器傳回「HTTP 401 – 未經授權」,並且在此回應中指出其支援的驗證方法為何。在下一個要求中,用戶端重新傳送上一個要求,但是這次在要求的標頭中傳送 Web 應用程式的服務票證。如果驗證成功,伺服器就會傳回所要求的資源。

NetMon 3.4

NetMon 3.4 是 Microsoft 提供的免費網路封包分析器,可從 Microsoft 下載中心下載:Microsoft Network Monitor 3.4 (可能為英文網頁)

在 NetMon 中,您會看到對 KDC 和 SharePoint Server 網頁伺服器的所有 TCP 要求及回應,提供您構成完整驗證要求的流量完整檢視。若要使用 NetMon 來驗證 Kerberos 驗證有效,請執行下列動作:

  1. 下載及安裝 NetMon 3.4 (Microsoft Network Monitor 3.4 (可能為英文網頁))。

  2. 登出用戶端,再重新登入,以清除 Kerberos 票證快取。您可以選擇使用 KerbTray 來清除票證快取 (以滑鼠右鍵按一下 KerbTray,並選取 [清除票證])。

  3. 以管理員模式啟動 NetMon。以滑鼠右鍵按一下 NetMon 捷徑,並選取 [以系統管理員身分執行]。

  4. 在您的環境及 Web 前端中,於連線至 Active Directory 控制站的介面上啟動新的擷取。

  5. 開啟 Internet Explorer,並瀏覽 Web 應用程式。

  6. 網站轉譯之後,停止擷取,並新增顯示篩選,以顯示 Kerberos 驗證及 HTTP 流量的框架。

  7. 在框架視窗中,您應該會看到 HTTP 及 KerberosV5 流量。

透過 SSL 測試 Kerberos 驗證

若要清楚地示範當用戶端存取 SSL 保護資源時,所要求的 SPN,您可以使用像 Netmon 之類的工具來擷取用戶端與伺服器之間的流量,以及檢查 Kerberos 服務票證要求。

  1. 登出後再重新登入用戶端電腦,或是使用 KerbTray 來清除所有快取的 Kerberos 票證。

  2. 在用戶端電腦上啟動新的 NetMon 擷取。請務必以管理員權限啟動 NetMon。

  3. 使用 SSL 瀏覽至 Web 應用程式 (在此範例中為 https://portal)。

  4. 停止 NetMon 擷取,並檢查 KerberosV5 流量。如需如何篩選擷取顯示的指示,請參閱本文<NetMon 3.4>一節中的指示。

  5. 尋找用戶端傳送的 TGS 要求。在要求中,您會看到在 "Sname" 參數中要求的 SPN。

    請注意,"Sname" 是 HTTP/portal.vmlab.local,而不是 HTTPS/portal.vmlab.local。

測試 SharePoint Server 搜尋索引及查詢

確認索引伺服器的瀏覽器存取權

在執行編目之前,請確定索引伺服器可以存取 Web 應用程式,且驗證成功。登入索引伺服器,並且在瀏覽器中開啟測試網站集合。如果網站轉譯成功,而且沒有出現驗證對話方塊,請繼續進行下一個步驟。如果在瀏覽器中存取網站時發生任何問題,請回到上一個步驟,確定所有設定動作都已正確執行。

上傳範例內容並執行編目

在每個網站集合中,將「種子」文件 (可輕易在搜尋中識別的文件) 上傳至網站集合中的文件庫。例如, 建立包含 "alpha, beta, delta" 這些字的文字文件,並將它儲存至每個網站集合中的文件庫。

接著,瀏覽至 SharePoint 管理中心,並且在本機 SharePoint 網站內容來源 (依預設,應該會包含兩個測試網站集合) 上啟動完整編目。

測試搜尋

如果順利完成索引,您應該會在索引中看到可搜尋的項目,而且編目記錄檔中沒有錯誤。

注意

如果您已設定使用者設定檔應用程式 (UPA),並且正在設定檔儲存區上執行編目,請務必設定 UPA 的適當權限,讓內容存取帳戶可以存取設定檔資料。如果您尚未設定 UPA 權限,則會在編目記錄檔中收到錯誤,指出編目程式無法存取設定檔服務,因為它在嘗試存取服務時,收到 HTTP 401。傳回 401 並不是因為 Kerberos,而是因為內容存取帳戶沒有讀取設定檔資料的權限。

接著,瀏覽至每個網站集合,並針對種子文件執行搜尋。每個網站集合的搜尋查詢應該都會傳回所上傳的種子文件。

測試前端 Web 委派

在此案例的最後一個步驟中,您要使用每個網站集合上的 RSS 檢視器網頁組件,來確定委派在本機及遠端運作中。

設定每個網站集合上的 RSS 摘要來源

針對入口網站應用程式,您必須在網站集合上啟用 RSS 摘要。若要開啟 RSS 摘要,請遵循 Office.com 上管理 RSS 摘要中的指示。

啟用 RSS 摘要之後,建立新的自訂清單,並新增清單項目,以供測試之用。導覽至 [清單] 工具列功能表,按一下 [RSS 摘要],以檢視 RSS 摘要。複製摘要 URL,以在下列步驟中使用。

針對每個網站集合執行此步驟。

新增 RSS 檢視網頁組件至每個網站集合的首頁

在入口網站應用程式上,您需要啟用 SharePoint Enterprise 功能網站集合功能,以使用 RSS 檢視器網頁組件。啟用之後,新增兩個 RSS 檢視器網頁組件至首頁。針對第一個網頁組件,設定摘要 URL 以指向您在上一個步驟中建立的本機 RSS 摘要。針對第二個網頁組件,設定摘要 URL 以指向遠端摘要 URL。完成後,您應該會看到兩個網頁組件都成功地從本機及遠端 RSS 摘要轉譯內容。