規劃 SharePoint Server 的 Kerberos 的驗證

適用于:yes-img-132013 yes-img-16 2016yes-img-192019 yes-img-se訂閱版本 no-img-sopMicrosoft 365 中的 SharePoint

Kerberos 通訊協定支援的驗證方法使用信任來源所提供的票證。 Kerberos 票證指出與用戶端電腦相關之使用者的網路認證已經過驗證。 Kerberos 通訊協定定義使用者如何與網路服務互動以存取網路資源。 Kerberos 金鑰發佈中心 (KDC) 代表使用者向用戶端電腦發出票證授與票證 (TGT)。 在 Windows 中,用戶端電腦是 Active Directory 網域服務 (AD DS) 網域的成員,而 TGT 是網域控制站驗證使用者認證的證明。

建立網路服務的網路連線之前,用戶端電腦會提供其 TGT 給 KDC 並要求服務票證。 根據之前發出的 TGT (用以確認用戶端電腦已經過驗證),KDC 向用戶端電腦發出服務票證。 然後用戶端電腦會將服務票證提交給網路服務。 服務票證也必須包含可接受的服務主要名稱 (SPN) 以識別服務。 若要啟用 Kerberos 驗證,用戶端和伺服器電腦必須已擁有與 KDC 的信任連線。 用戶端和伺服器電腦也必須可以存取 AD DS。

Kerberos 驗證和 SharePoint Server

您應該考慮使用 Kerberos 驗證的原因如下:

  • Kerberos 通訊協定是最強大的整合式 Windows 驗證通訊協定,而且支援進階安全性功能 (包括進階加密標準 (AES) 加密,以及用戶端和伺服器的相互驗證)。

  • Kerberos 通訊協定允許委派用戶端認證。

  • 在可用的安全驗證方法中,Kerberos 需要與 AD DS 網域控制站的最少網路流量。 在特定情況下,Kerberos 可以減少頁面延遲,或是在特定情況下增加前端網頁伺服器可以提供的頁面數。 Kerberos 也可以減少網域控制站的負載。

  • Kerberos 通訊協定是許多平台和廠商支援的開放式通訊協定。

Kerberos 驗證可能不適用的原因如下:

  • 相對於其他驗證方法,Kerberos 驗證需要其他基礎結構和環境設定,才能正常運作。 在許多情況下,需要有網域管理員權限,才能設定 Kerberos 驗證 (設定及管理此驗證可能很困難)。 Kerberos 的設定錯誤可能會防止您網站的驗證順利成功。

  • Kerberos 驗證需要 KDC 及 AD DS 網域控制站的用戶端電腦連線。 在 Windows 和 SharePoint 部署中,KDC 是 AD DS 網域控制站。 雖然這是組織內部網路常見的網路設定,但是網際網路對應部署一般不是以此方式進行設定。

Kerberos 委派

Kerberos 驗證支援委派用戶端身分識別。 這表示服務可以模擬已驗證用戶端的身分識別。 模擬可讓服務代表用戶端將驗證過的身分識別傳遞給其他網路服務。 宣告式驗證也可以用來委派用戶端認證,但需要後端應用程式為宣告感知的。

Kerberos 委派與 SharePoint Server 搭配使用,可讓前端服務驗證用戶端,然後使用用戶端的身分識別來驗證後端系統。 後端系統接著會執行它自己的驗證。 用戶端使用 Kerberos 驗證向前端服務進行驗證時,Kerberos 委派可以用來將用戶端的身分識別傳遞給後端系統。 Kerberos 通訊協定支援兩種類型的委派:

  • 基本 Kerberos 委派 (未設限)

  • Kerberos 限制委派

基本 Kerberos 委派和 Kerberos 限制委派

基本 Kerberos 委派可以跨相同樹系內的網域界限,但是無法跨樹系界限。 Kerberos 限制委派無法跨網域或樹系界限,但是當您使用執行 Windows Server 2012 的網域控制站時則除外。

根據屬於 SharePoint Server 部署一部分的服務應用程式,使用 SharePoint Server 實作 Kerberos 驗證可能需要 Kerberos 限制委派。

重要事項

若要使用下列任何服務應用程式部署 Kerberos 驗證,SharePoint Server 和所有外部資料源必須位於相同的 Windows 網域中: > Excel Services > PerformancePoint Services > InfoPath Forms Services > Visio Services > SharePoint Foundation 2013 中無法使用這些服務應用程式。 Excel Services 不適用於 SharePoint Server 2016。

若要使用下列任何服務應用程式或產品來部署 Kerberos 驗證,則 SharePoint Server 可以使用基本 Kerberos 委派或 Kerberos 限制委派:

  • Business Data Connectivity Service (此服務應用程式無法在 SharePoint Foundation 2013 中使用)

  • Access Services (此服務應用程式無法在 SharePoint Foundation 2013 中使用)

  • SQL Server Reporting Services (SSRS) (獨立的產品)

  • Project Server 2016 (獨立的產品)

啟用 Kerberos 驗證的服務可以委派身分識別多次。 當身分識別從服務到服務移動時,委派方法可以從基本 Kerberos 變更為 Kerberos 限制。 不過,無法反轉。 委派方法無法從限制為基本 Kerberos 的 Kerberos 變更。 因此,請務必預測和規劃後端服務是否需要基本 Kerberos 委派。 這可能會影響網域界限的規劃和設計。

啟用 Kerberos 的服務可以使用通訊協定轉換,將非 Kerberos 身分識別轉換為 Kerberos 身分識別,以委派給其他啟用 Kerberos 的服務。 例如,可以使用此功能將前端服務的非 Kerberos 身分識別委派給後端服務上的 Kerberos 身分識別。

重要事項

[!重要事項] 通訊協定轉換需要 Kerberos 限制委派。 因此,通訊協定轉換的身分識別無法跨網域界限。

宣告式驗證可以做為 Kerberos 委派的替代方案。 如果服務符合下列所有準則,則宣告式驗證可讓用戶端的驗證宣告在不同的服務之間傳遞:

  • 服務之間必須具備信任關係。

  • 所有服務都必須是宣告感知。

如需 Kerberos 驗證的詳細資訊,請參閱下列資源:

Kerberos 驗證和宣告式驗證

SharePoint 2013 和 SharePoint Server 2016 支援宣告式驗證。 宣告式驗證是根據 Windows Identity Foundation (WIF,一組用來實作宣告式身分識別的 .NET Framework 類別) 所建立。 宣告式驗證依賴標準 (如 WS-Federation 和 WS-Trust)。 如需宣告式驗證的詳細資訊,請參閱下列資源:

當您使用管理中心建立 UNRESOLVED_TOKEN_VAL(SharePoint Server) Web 應用程式時,您必須選取一或多個宣告式驗證類型。 當您使用 New-SPWebApplication Microsoft PowerShell Cmdlet 建立 UNRESOLVED_TOKEN_VAL(SharePoint Server) Web 應用程式時,您可以指定宣告驗證和宣告驗證類型,或傳統模式驗證。 建議所有 UNRESOLVED_TOKEN_VAL(SharePoint Server) Web 應用程式均使用宣告驗證。 如果使用宣告驗證,Web 應用程式可使用所有支援的驗證類型,且您可以利用伺服器對伺服器驗證及應用程式驗證。 如需詳細資訊,請參閱 What's new in authentication for SharePoint Server 2013

重要事項

The following service applications in SharePoint Server require the translation of claims-based credentials to Windows credentials. 此轉譯程式會使用對 Windows 權杖服務的宣告 (C2WTS) : >Excel Services>PerformancePoint Services>InfoPath Forms Services>Visio Services>> SharePoint Foundation 中無法使用這些服務應用程式2013. Excel Services is not available in SharePoint Server 2016.

需要 C2WTS 的服務應用程式必須使用 Kerberos 限制委派,因為 C2WTS 需要通訊協定轉換,只有 Kerberos 限制委派才支援。 針對上一個清單中的服務應用程式,C2WTS 會將伺服器陣列內的宣告轉譯為 Windows 認證,以進行傳出驗證。 請務必瞭解,只有當傳入驗證方法是 Windows 宣告或 Windows 傳統模式時,這些服務應用程式才能使用 C2WTS。 透過 Web 應用程式存取且使用安全性判斷提示標記語言 (SAML) 宣告或表單型驗證宣告的服務應用程式不會使用 C2WTS。 因此,它們無法將宣告轉譯為 Windows 認證。

Kerberos 驗證和新的 SharePoint 應用程式模型

如果使用 Windows 宣告模式進行使用者驗證,並將 Web 應用程式設定為僅使用 Kerberos 驗證,而不回到以 NTLM 做為驗證通訊協定,則應用程式驗證將無效。 如需詳細資訊,請參閱在 SharePoint Server 中規劃應用程式驗證

另請參閱

概念

在 SharePoint Server 中規劃使用者驗證方法