當您嘗試存取 IIS 7.0 上裝載的網站時,發生 HTTP 錯誤 403.16

本文可協助您解決當您存取裝載於 Internet Information Services (IIS) 7.0 上的網站時,所發生的 HTTP 403.16 - 禁止 錯誤。

原始產品版本: Internet Information Services 7.0
原始 KB 編號: 942061

徵狀

您有裝載於 IIS 7.0 的網站。 當您嘗試透過網頁瀏覽器存取網站時,您會收到類似下列其中一個範例的錯誤訊息。

  • 錯誤訊息 1

    應用程式 "application name" 中有伺服器錯誤
    HTTP 錯誤 403.16 - 禁止
    HRESULT:0x800b0109
    HRESULT 的描述
    您的客戶端憑證不受信任或無效。

  • 錯誤訊息 2

    HTTP 403.16 用戶端憑證不受信任或無效。 智慧卡用戶無法驗證。403 禁止

原因 1:跟證書不在受信任的跟證書授權單位證書存儲中

發生此問題的原因是證書頒發機構單位的跟證書不在 IIS Web 伺服器上的受信任跟證書授權單位證書存儲中。

注意事項

證書頒發機構單位的跟證書是用來發行客戶端憑證。

原因 2:非自我簽署憑證位於受信任的跟證書授權單位證書存儲中

受信任跟證書授權單位證書存儲中有一或多個非自我簽署憑證。 非自我簽署憑證是和 Issued By 值不完全相符的任何憑證Issued To

原因 1 的解決方式

  1. 在 IIS 網頁伺服器上,選取 [開始],在 [開始搜尋] 方塊中輸入 mmc.exe,以滑鼠右鍵按兩下 [mmc.exe],然後選取 [以系統管理員身分執行]

    注意事項

    若提示您輸入系統管理員密碼或確認,請輸入密碼或按一下 [繼續]

  2. 在 [ 檔案] 功能表上,選取 [ 新增/移除嵌入式管理單元]

  3. [可用的嵌入式管理單元] 下,選取 [ 憑證],然後選取 [ 新增]

  4. 選取 [計算機帳戶],然後選取 [ 下一步]

  5. 選取 [本機計算機],選取 [ 完成],然後選取 [ 關閉]

  6. 若要結束精靈,請選取 [ 確定]

  7. 依序展開 [憑證]、[ 受信任的跟證書授權單位]、以滑鼠右鍵按兩下 [ 憑證]、指向 [ 所有工作],然後選取 [ 匯入]

  8. 在 [憑證匯入精靈] 中,選取 [ 下一步]

  9. 在 [ 檔名] 方塊中,輸入證書頒發機構單位的跟證書位置,然後選取 [ 下一步]

  10. 選取 [下一步],然後選取 [ 完成]

原因 2 的解決方式

將任何非自我簽署的憑證移出受信任的跟證書授權單位證書存儲,並移至中繼證書頒發機構單位證書存儲。

其他相關資訊

若要識別受信任跟證書授權單位證書存儲中所有非自我簽署的憑證,請執行下列 PowerShell 命令:

Get-Childitem cert:\LocalMachine\root -Recurse |
Where-Object {$_.Issuer -ne $_.Subject} | Format-List * | Out-File "c:\computer_filtered.txt"