次の方法で共有


ドメインに参加していないクライアントで KBR を使用した CEP/CES 自動登録が失敗した場合のエラー 0x80090022 NTE_SILENT_CONTEXT

この記事は、ドメインに参加していないクライアントでキーベースの更新 (KBR) を使用した証明書登録ポリシー Web サービス (CEP) と証明書登録 Web サービス (CES) の自動登録が失敗し、"0x80090022 NTE_SILENT_CONTEXT" というエラーが発生する問題を解決するのに役立ちます。

ユーザー名パスワードの初期登録と証明書 KBR に対して、ドメインに参加していないクライアントで CEP/CES を構成します。 構成の詳細については、「 カスタム ポートでの証明書キーベースの更新のための証明書登録 Web サービスの構成を参照してください。

certlm.mscを使用した初期証明書の登録と、AD アカウントのユーザー名とパスワードによる認証は機能しますが、KBR の更新は失敗します。 自動更新を使用してトリガーされた場合、および certreq -machine -q -enroll -cert <thumbprint> renew コマンドレットを使用して手動で実行されると、更新は失敗します。

KBR 証明書の更新中に、 CertEnroll.log ファイルから "0x80090022 (-2146893790 NTE_SILENT_CONTEXT)" というエラーが表示されました。

2032.4155.0:<DateTime>: 0x0 (WIN32: 0): https://ws2019cepces.contoso.lab/KeyBasedRenewal_ADPolicyProvider_CEP_Certificate/service.svc/CEP
…
https://ws2019cepces.contoso.lab/KeyBasedRenewal_ADPolicyProvider_CEP_UsernamePassword/service.svc/CEP
…
3002.676.0:<DateTime>: 0x803d0013 (-2143485933 WS_E_ENDPOINT_FAULT_RECEIVED)
3002.690.0:<DateTime>: 0x803d0013 (-2143485933 WS_E_ENDPOINT_FAULT_RECEIVED): A message containing a fault was received from the remote endpoint. 0x803d0013 (-2143485933 WS_E_ENDPOINT_FAULT_RECEIVED)
3002.744.0:<DateTime>: 0x803d0013 (-2143485933 WS_E_ENDPOINT_FAULT_RECEIVED): https://ws2019cepces.contoso.lab/KeyBasedRenewal_ADPolicyProvider_CEP_Certificate/service.svc/CEP
…
2032.1371.0:<DateTime>: 0x80090022 (-2146893790 NTE_SILENT_CONTEXT)
450.201.0:<DateTime>: 0x1 (WIN32: 1 ERROR_INVALID_FUNCTION): Error
450.202.0:<DateTime>: 0x825a0044 (-2108030908)
450.219.0:<DateTime>: 0x0 (WIN32: 0): Local system
…
450.219.0:<DateTime>: 0x2 (WIN32: 2 ERROR_FILE_NOT_FOUND): Provider could not perform the action since the context was acquired as silent. 0x80090022 (-2146893790 NTE_SILENT_CONTEXT)

問題の考えられる原因を次に示します。

  • CEP/CES KBR の更新が行われるクライアント コンピューターで、誤解を招くエラー "0x80090022 NTE_SILENT_CONTEXT" が報告されます。
  • クライアント証明書用に設計された証明書テンプレートでサポートされていない有効期間または更新期間。

誤解を招くエラー "0x80090022 NTE_SILENT_CONTEXT" が CEP/CES KBR 更新が行われるクライアント コンピューターで報告される

証明書登録ユーザー インターフェイスで報告されたエラーは "0x80090022 NTE_SILENT_CONTEXT" です。ただし、関連するエラーは、 CertEnroll.log ファイルで以前に報告された "0x803d0013 WS_E_ENDPOINT_FAULT_RECEIVED" です。

混乱は、certificate_CES エンドポイントの 優先度 によって発生します。 certificate_CES エンドポイントは最初に実行され (certificate_CES エンドポイントは KBR 更新シナリオで動作する必要があります)、その後、最初のusername_password_CESがフォールバックとして実行されます。 username_password_CES エンドポイントにはユーザー入力が必要です。この入力は機能しないと予想されます。 その後、エラー "0x80090022 NTE_SILENT_CONTEXT" が発生します。

つまり、エラー "0x803d0013 WS_E_ENDPOINT_FAULT_RECEIVED" は、さらに調査する必要がある関連するエラーです。

エラー "0x803d0013 WS_E_ENDPOINT_FAULT_RECEIVED" の考えられる原因を次に示します。

  • リモート プロシージャ コール (RPC) または分散コンポーネント オブジェクト モデル (DCOM) 接続のポートは、CES と証明機関 (CA) サーバーの間でブロックされます。

  • RPC または DCOM 接続のポートは、CA サーバーとドメイン コントローラーの間でブロックされます。

  • インターネット インフォメーション サービス (IIS) によってホストされる CEP/CES アプリケーションには構成の問題があります。

    構成の問題は、Web.config ファイルの <system.serviceModel> セクションに<serviceHostingEnvironment multipleSiteBindingsEnabled="true"/>を追加することで解決できます。

クライアント証明書用に設計された証明書テンプレートでサポートされていない有効期間または更新期間

証明書の自動登録が正しく機能するためには、証明書テンプレートの有効期間を少なくとも 5 日間に設定し、更新期間を少なくとも 1 日に設定してください。