SharePoint STS 証明書の CRL チェックが原因でサイトの速度が低下する

現象

SharePoint Foundation 2010 または SharePoint Server 2010 でクレーム ベースの認証を使用する Web アプリケーションがあるとします。 SharePoint サーバーはインターネットにアクセスできません。または、サーバーは、ポートが制限されているファイアウォールによって保護されています。 このような状況では、ユーザーがサイトへのログインや検索の実行など、特定の操作を実行すると、間欠的に長い遅延が発生します。 また、ユーザーがこれらの操作を実行するときに HTTP タイムアウトが発生する可能性もあります。

原因

SharePoint では、証明書を使用して、セキュリティ トークン サービス (STS) によって発行されたセキュリティ トークンに署名します。 すべての証明書と同様に、証明書が失効していないことを確認するために、STS 証明書の有効性を定期的に確認する必要があります。 既定では、チェーン内のルート証明書は SharePoint サーバーの信頼されたルート証明機関ストアには追加されません。 このため、証明書の証明書失効リスト (CRL) チェックはインターネット経由で実行されます。 何らかの理由でオンライン CRL サーバーに SharePoint サーバーからアクセスできない場合、既定では 15 秒後に操作がタイムアウトします。 CRL 検証が 15 秒後に失敗した場合でも、遅延後も SharePoint ページがレンダリングされる可能性があります。

証明書の検証エラーは、SharePoint サーバーで CAPI2 イベント ログを有効にすることで追跡できます。 CAPI2 イベント ログが有効になっていて、インターネット証明書の検証が失敗すると、CAPI2 イベント ログに次のエラー メッセージが頻繁に表示されます。

  • ビルド チェーン エラー

    イベント ID: 11
    タスク カテゴリ: ビルド チェーン
    subjectName (イベントの詳細から取得): SharePoint セキュリティ トークン サービス

  • ネットワーク エラーからオブジェクトを取得する

    イベント ID: 53
    タスク カテゴリ: ネットワークからオブジェクトを取得する

    URL (イベントの詳細から取得): https://www.download.windowsupdate.com/msdownload/update/v3/static/trustedr/en/authrootstl.cab

CAPI2 ログを有効にする方法については、「詳細情報」セクションを参照してください。

解決方法

この問題を解決するには、次のいずれかの回避策を実行します。

回避策 1

信頼されたルート証明機関ストアに SharePoint ルート証明機関証明書をインストールします。 ルート証明書がローカル証明書ストアに追加されると、証明書の検証はインターネット経由で実行されなくなります。 次の手順では、ローカル ストアで証明書を見つけることで BuildChain が成功するため、ネットワークからオブジェクトを取得する必要がなくなります。 ルート証明書をローカル証明書ストアに追加するには、ファーム内の各 SharePoint サーバーで次の手順を実行する必要があります。

  1. SharePoint ルート証明機関証明書を物理 (.cer) ファイルとしてエクスポートします。 SharePoint 2010 管理シェルを管理者として起動し、次のWindows PowerShell コマンドを実行します。

    $rootCert = (Get-SPCertificateAuthority).RootCertificate   
    $rootCert.Export("Cert") | Set-Content C:\SharePointRootAuthority.cer -Encoding byte
    

    メモ これにより、SharePoint の内部ルート証明書 (.cer ファイル) がドライブ C にエクスポートされます。このファイルは、PowerShell コマンドを再度実行することなく、インポートのためにファーム内のすべてのサーバーでコピーして使用できます。

  2. SharePoint ルート証明機関証明書を信頼されたルート証明機関ストアにインポートします。 信頼されたルート証明機関ストアに SharePoint ルート証明機関証明書を追加するには、次の手順に従います。

    メモ "Administrators" は、これらの手順を完了するために最低限必要なグループ メンバーシップです。

    1. [ スタート] をタップまたはクリックし、[ 検索の開始] に「mmc」と入力し、Enter キーを押します。
    2. [ファイル] メニューの [スナップインの追加と削除] をクリックします。
    3. [ 使用可能なスナップイン] で、[ 証明書] をクリックし、[ 追加] をクリックします。
    4. [ このスナップインは常に証明書を管理します] で、[ コンピューター アカウント] を選択し、[ 次へ] をクリックします。
    5. [ローカル コンピューター] を選択し、[完了] をクリック します
    6. 本体に追加するスナップインがもうない場合は、[OK] をクリック します
    7. コンソール ツリーで、[ 証明書] をダブルクリックします。
    8. 信頼されたルート証明機関ストアを右クリックします。
    9. [ すべてのタスク] をクリックし、[ インポート ] をクリックして証明書をインポートし、証明書のインポート ウィザードの手順に従います。

回避策 2

SharePoint サーバーのルート証明書の自動更新を無効にします。 これを行うには、次の手順を実行します。

  1. ローカル グループ ポリシー エディターの [コンピューターの構成] ノードで、[ポリシー] をダブルクリックします。
  2. [Windows の設定] をダブルクリックし、[セキュリティ設定] をダブルクリックし、[公開キー ポリシー] をダブルクリックします。
  3. [詳細] ウィンドウで、[ 証明書パスの検証設定] をダブルクリックします。
  4. [ネットワークの取得] タブをクリックし、[これらのポリシー設定をチェック定義する] ボックスを選択し、[Microsoft ルート証明書プログラム (推奨)] チェック ボックスの [証明書の自動更新] をオフにします。
  5. [OK] をクリックし、[ローカル] グループ ポリシー エディターを閉じます。
  6. gpupdate/force を実行して、ポリシーをすぐに有効にします。

メモ 自動更新が無効になっている場合は、新しいリリースを監視し、必要に応じて証明書の信頼を手動で更新する必要があります。

ルート証明書の自動更新を無効にすることの影響

自己署名証明書を使用し、自分で管理しているため、SharePoint に特定の影響を与えるべきではありません。 SharePoint 証明書の有効期限は切れていますが、これを監視し、管理者に更新または再ロールするよう警告する正常性規則があります。

考慮すべきメインの側面は、コンピューターで使用される他の証明書 (SSL 証明書、ダウンロード パッケージを信頼する証明書、SAFER ポリシーなど) の場合です。これは、信頼されたルート証明機関ストア内の証明書にチェーンされた証明書から発行されます。

詳細情報

イベント ビューアー UI から CAPI2 ログを有効にして保存する

  1. イベント ビューアーを開きます。 イベント ビューアを開くには、[スタート] ボタン、[コントロール パネル] の順にクリックし、[管理ツール][イベント ビューア] の順にダブルクリックします。
  2. [ ユーザー アカウント制御 ] ダイアログ ボックスが表示されたら、表示されるアクションが実行する操作であることを確認し、[ 続行] をクリックします。
  3. [コンソール] ウィンドウで、[イベント ビューアー] を展開し、[アプリケーションとサービス ログ] を展開し、[Microsoft] を展開し、[Windows]、[CAPI2] の順に展開します。
  4. これで、次のアクションを実行できます。
    • CAPI2 ログ記録を有効にするには、[ 操作] を右クリックし、[ ログの有効化] を選択します。

    • ログをファイルに保存するには、[ 操作] を右クリックし、[イベントの 名前を付けて保存] を選択します。 ログ ファイルは、EVTX 形式 (イベント ビューアーを使用して開くことができます) または XML 形式で保存できます。

    • CAPI2 ログを無効にするには、[ 操作] を右クリックし、[ ログの無効化] を選択します。

    • 問題を再現する前にログにデータが存在する場合は、ログをクリアすることをお勧めします。 これにより、問題シナリオに関連するデータのみを保存されたログから収集できます。 ログをクリアするには、[ 操作] を右クリックし、[ ログのクリア] を選択します。

    • CAPI2 診断の場合、ログのサイズは急速に大きくなる可能性があります。関連するイベントをキャプチャするには、ログ サイズを少なくとも 4 MB (MB) に増やすことをお勧めします。 ログ サイズを大きくするには、[ 操作] を右クリックし、[ プロパティ] を選択します。 ログのプロパティで、最大ログ サイズを増やします。

      メモ イベント ログの既定のサイズは 1 MB です。

さらにヘルプが必要ですか? SharePoint コミュニティにアクセスしてください。