IIS でホストされている Web サイトにアクセスしようとすると、HTTP エラー 403.16 が発生する
この記事は、インターネット インフォメーション サービス (IIS) でホストされている Web サイトにアクセスするときに発生する "HTTP 403.16 - Forbidden" エラーを解決するのに役立ちます。
元の製品バージョン: インターネット インフォメーション サービス
元の KB 番号: 942061
現象
Windows Server 2016 以降に付属する IIS Web サーバーでホストされている Web サイトがあります。 Web ブラウザーを使用してサイトにアクセスしようとすると、次のいずれかの例のようなエラー メッセージが表示されます。
エラー メッセージ 1
アプリケーション「アプリケーション名」でのサーバー エラー
HTTP エラー 403.16 - 禁止
HRESULT: 0x800b0109
HRESULT の説明
クライアント証明書が信頼されていないか、無効です。エラー メッセージ 2
HTTP 403.16 クライアント証明書が信頼されていないか無効です。 スマート カード ユーザーは認証できません。403 禁止
原因 1: ルート証明書が信頼されたルート証明機関の証明書ストアにない
この問題は、証明機関のルート証明書が IIS Web サーバーの信頼されたルート証明機関証明書ストアにないために発生します。
Note
証明機関のルート証明書は、クライアント証明書の発行に使用されます。
原因 1 の解決策
IIS Web サーバーで Start を選択し、Start Search ボックスに「mmc.exe」と入力し、mmc.exeを右クリックして、[管理者として実行] 選択。
Note
管理者パスワードまたは確認を求められたら、パスワードを入力するか、[続行] 選択します。
[ファイル] メニューの [スナップインの追加と削除] を選択します。
[ Available スナップインで Certificates を選択し、 Add を選択します。
[コンピューター アカウント] を選択し、 [次へ] を選択します。
[ローカル コンピューター選択しFinishを選択し、Close を選択します。
ウィザードを終了するには、 OK を選択します。
Certificates>Trusted Root Certification Authorities を展開し、Certificates を右クリックし、[すべてのタスク ] をポイントして、[Import] を選択します。
証明書のインポート ウィザードで、[次へ] を選択します。
[ ファイル名 ボックスに証明機関のルート証明書の場所を入力し、 Next を選択します。
[次へ]>[完了] の順に選択します。
原因 2: 自己署名されていない証明書が信頼されたルート証明機関の証明書ストアにある
信頼されたルート証明機関の証明書ストアには、1 つ以上の自己署名証明書があります。 自己署名証明書以外は、 Issued To
値と Issued By
値が完全に一致しない証明書です。
原因 2 の解決策
自己署名証明書を信頼されたルート証明機関の証明書ストアから中間証明機関の証明書ストアに移動します。
詳細
信頼されたルート証明機関証明書ストア内のすべての自己署名証明書を識別するには、次の PowerShell コマンドを実行します。
Get-Childitem cert:\LocalMachine\root -Recurse |
Where-Object {$_.Issuer -ne $_.Subject} | Format-List * | Out-File "c:\computer_filtered.txt"