IIS 7.0 でホストされている Web サイトにアクセスしようとすると、HTTP エラー 403.16 が発生する

この記事は、インターネット インフォメーション サービス (IIS) 7.0 でホストされている Web サイトにアクセスするときに発生する HTTP 403.16 - 禁止 エラーを解決するのに役立ちます。

元の製品バージョン: インターネット インフォメーション サービス 7.0
元の KB 番号: 942061

現象

IIS 7.0 でホストされている Web サイトがあります。 Web ブラウザーを使用してサイトにアクセスしようとすると、次のいずれかの例のようなエラー メッセージが表示されます。

  • エラー メッセージ 1

    アプリケーション「アプリケーション名」でのサーバー エラー
    HTTP エラー 403.16 - 禁止
    HRESULT: 0x800b0109
    HRESULT の説明
    クライアント証明書が信頼されていないか、無効です。

  • エラー メッセージ 2

    HTTP 403.16 クライアント証明書が信頼されていないか無効です。 スマート カード ユーザーは認証できません。403 禁止

原因 1: ルート証明書が信頼されたルート証明機関の証明書ストアにない

この問題は、証明機関のルート証明書が IIS Web サーバーの信頼されたルート証明機関証明書ストアに存在しないために発生します。

注:

証明機関のルート証明書は、クライアント証明書の発行に使用されます。

原因 2: 自己署名証明書以外の証明書が信頼されたルート証明機関の証明書ストアにある

信頼されたルート証明機関証明書ストアには、1 つ以上の自己署名証明書があります。 自己署名証明書以外の証明書は、 と Issued ByIssued To値が完全に一致しない証明書です。

原因 1 の解決策

  1. IIS Web サーバーで[スタート] を選択し、[検索の開始] ボックスに「mmc.exe」と入力し、[mmc.exe] を右クリックし、[管理者として実行] を選択します。

    注:

    管理者パスワードまたは確認を求められたら、パスワードを入力するか、[続行] 選択します。

  2. [ファイル] メニューの [スナップインの追加と削除] を選択します。

  3. [ 使用可能なスナップイン] で、[ 証明書] を選択し、[ 追加] を選択します。

  4. [コンピューター アカウント] を選択し、 [次へ] を選択します。

  5. [ ローカル コンピューター] を選択 し、[完了] を選択し、[ 閉じる] を選択します。

  6. ウィザードを終了するには、[ OK] を選択します

  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"