RWDC が使用できない場合の DPAPI MasterKey バックアップ エラー

この記事では、RWDC が使用できない場合に発生する DPAPI MasterKey バックアップ エラーを解決するソリューションを提供します。

適用対象: Windows 10 Version 1809、Windows Server 2012 R2、Windows Server 2016、Windows Server 2019
元の KB 番号: 3205778

現象

  • 次の動作は、MS14-066、KB2992611、KB3000850、またはこれらの修正プログラムを含む新しい更新プログラムをインストールした後、Windows 8.1 および Windows Server 2012 R2 で発生します。
  • 同じ動作は、すべてのバージョンのWindows 10以降のバージョンの Windows でも発生します。 読み取り専用ドメイン コントローラー (RODC) によってサービスされているサイト内の新しいコンピューターに初めてログオンするドメイン ユーザーには、次のエラーと問題が発生します。

一般的な問題

  1. Credential Manager を開くと、0x80090345 エラーが発生して失敗します。これは次のようになります。

    16 進数 10 進数 シンボリック フレンドリー
    0x80090345 -2146892987 SEC_E_DELEGATION_REQUIRED 要求された操作を完了できません。 コンピューターは委任に対して信頼されている必要があり、現在のユーザー アカウントは委任を許可するように構成する必要があります。
  2. RDP パスワードの保存は、明らかなエラーなしで失敗します。

  3. パスワードの変更が完了するまでに予想よりも長い時間がかかります。

  4. エクスプローラーは、ファイルを暗号化するときにハングします。

  5. Office と Office 365 で、Windows Live メール 2012 で新しいアカウントを追加すると、エラー 0x80090345で失敗します。

  6. Outlook プロファイルの作成が失敗し、次のエラーが発生します。

    メール サーバーへの暗号化された接続は使用できません。

  7. Lync と Skype へのサインインがハングするか、"サーバーに接続してサインイン" 段階で長い遅延が発生します。

  8. SQL サービスがドメイン アカウントで開始できず、次のエラーがトリガーされます。

    有効な証明書が見つからず、自己署名証明書を作成できないため、SSL 暗号化を初期化できません。

  9. SQL Serverインストールが失敗し、次のエラーが発生します。

    エラー: SQL サーバーのセットアップで次のエラーが発生しました。"XML ドキュメント エラー コードの生成0x8410001。

  10. ドメイン ユーザーは、SMSS から SQL データベースを管理できません。 (SQL Server Management Studio)。 この問題は、データベースが SSMS DataBases -CustomerDatabase -Tables ->>>Table 名を介して移動されるときに発生します。

    テーブルを右クリックし、[ デザイン] を選択すると、次のエラーが発生します。

    要求された操作を完了できません。 コンピューターは委任に対して信頼されている必要があり、現在のユーザー アカウントは委任を許可するように構成する必要があります。 この例外は、System_Security_ni から発生しました。System.Security.Encryptiony.ProtectedData.Protect(Byte[], Byte[], System.Security.Encryptiony.DataProtectionScope)."

  11. ADFS WAP のインストールが自己署名証明書の作成に失敗し、次のエラーがトリガーされます。

    例外: プロキシ信頼証明書を作成しようとしたときにエラーが発生しました。

  12. RODC 専用の対象サイトへの ADLDS のインストールが失敗し、次のエラーが発生します。

    選択したサービス アカウントの有効なユーザーとパスワードを入力します

    1. この状況では、AdamInstall.logに次の情報が表示されます。

      adamsetup D20.10F8 0255 15:30:22.002 Enter GetServiceAccountError
      adamsetup D20.10F8 0256 15:30:22.002 選択したサービス アカウントの有効なユーザー名とパスワードを入力します。
      adamsetup D20.10F8 0257 15:30:22.002 ADAMERR_SERVICE_INVALID_CREDS

    2. エラー時に取得されたサンプル ネットワーク トレースは、ADLDS が正しくないパスワードを送信しており、Kerberos TGT 要求がKDC_ERR_PREAUTH_FAILEDで失敗することを示しています。

      ソース Destination (転送先) プロトコル 説明
      ADLDS Rodc KerberosV5 AS Request Cname: ADLDSSvc Realm: CONTOSO Sname: krbtgt/contoso {TCP:375, IPv4:7}
      Rodc ADLDS KerberosV5 KerberosV5:KRB_ERROR - KDC_ERR_PREAUTH_FAILED (24) {TCP:376, IPv4:7}
    3. イベント ID 4625 は、次のように ADLDS サーバーのセキュリティ ログに記録されます。

      イベント ID: 4625
      キーワード: 監査エラー
      説明: アカウントのログオンに失敗しました。
      ..
      エラー情報:
      失敗の理由: 不明なユーザー名または不適切なパスワード。
      状態: 0xC000006D
      サブ状態: 0xC000006A
      ..
      プロセス情報:
      呼び出し元プロセス名: C:\Windows\ADAM\adaminstall.exe

    • [状態] と [サブ] の状態が次の場所に変換されます。

      16 進数 10 進数 シンボリック フレンドリー
      0xc000006a -1073741718 STATUS_WRONG_PASSWORD パスワードを更新しようとすると、この戻り状態は、現在のパスワードとして指定された値が正しくないことを示します。
      0xc000006d -1073741715 STATUS_LOGON_FAILURE 試行されたログオンが無効です。 これは、ユーザー名または認証情報が正しくないためです。
    • いずれの場合も、NETLOGON。LOG は、書き込み可能なドメイン コントローラーの呼び出しを行う DsGetDcName 要求を示しています。

      [MISC][3736] DsGetDcName 関数という名前: クライアント PID=568、Dom:VS Acct:(null) フラグ: DS WRITABLE NETBIOS RET_DNS
      [CRITICAL][3736] NetpDcMatchResponse: CON-DC4: .: CONTOSO.COMレスポンダーは書き込み可能なサーバーではありません。

      [MISC][2600] DsGetDcName 関数は 1355 (クライアント PID=564): Dom:VS Acct:(null) フラグ: FORCE DS WRITABLE NETBIOS RET_DNSを返します

      ここで、

      16 進数 10 進数 シンボリック フレンドリー
      0x54b 1355 ERROR_NO_SUCH_DOMAIN 指定したドメインが存在しないか、接続できませんでした。

原因

ユーザーが初めてコンピューターにログオンし、初めてデータを暗号化しようとすると、オペレーティング システムは、ユーザーの現在のパスワードに基づく優先 DPAPI MasterKey を作成する必要があります。 DPAPI MasterKey の作成時に、RWDC に問い合わせてこのマスター キーをバックアップしようとします。 バックアップが失敗した場合、MasterKey を作成できず、0x80090345 エラーが返されます。

このエラーは、 KB2992611によって導入された新しい動作です。 古いオペレーティング システムや、KB2992611がインストールされていないシステムでは、MasterKey のバックアップ中にクライアントが RWDC に接続できない場合、マスター キーの作成は引き続き許可され、ローカル バックアップが作成されます。

つまり、RWDC が使用できない場合、レガシ動作ではマスター キーのローカル バックアップが実行されます。

RODC がシークレットを格納しない設計概要と一致し、RODC は MasterKey のバックアップを格納または処理しません。 そのため、RWDC が利用できないサイトでは、「現象」セクションに記載されている問題が発生する可能性があります。

注:

優先マスター キーが存在し、有効期限が切れている (パスワードケースが期限切れ) 場合、新しいマスター キーを生成しようとします。 新しいマスター キーのドメイン バックアップを作成できない場合、クライアントは古いマスター キーにフォールバックし、「現象」セクションで説明されている動作は発生しません。

この問題は、MasterKey が存在しない場合と、ユーザーが以前にコンピューターにログオンしていない場合にのみ発生します。

解決方法

  1. 問題が発生したドメイン参加済みワークステーションとサーバーが RWDC にアクセス可能であることを確認します。

    次のコマンド ラインを実行して、RWDC が存在し、正常な状態であることを確認します。

    nltest /dsgetdc:<domain> /writable [/force]
    

    NETLOGON を使用します。名前解決と RWDC への接続を確認するために、この記事で提供されているログの例を含む LOG とネットワーク トレース。
    この問題が発生しているかどうかを判断するには、コントロール パネルで CREDMAN を開いてみてください。 試行が0x80090345エラーで失敗した場合は、これを確認しました。

  2. 可能であれば、コンピューターを RWDC が存在するサイトにアクセスし、そこで初めてログオンします。 その後、DPAPI MasterKey が作成され、問題が解決されます。

  3. RWDC へのアクセス権がなく、ユーザーがマシン間でローミングしない場合は、次のレジストリ エントリを使用して問題を解決できます。

    この値を 1 に設定すると、ドメイン バックアップを使用する代わりに、DPAPI マスター キーがローカルにバックアップされます。 さらに、以前に作成したキーは、次に説明するように限られたケースを除き、書き込み可能なドメイン コントローラーの呼び出しをトリガーしません。 このレジストリ設定は、ドメイン アカウントにのみ適用されます。 ローカル アカウントでは、常にローカル バックアップが使用されます。

    パス HKEY_LOCAL_MACHINE\Software\Microsoft\Cryptography\Protect\Providers\df9d8cd0-1501-11d1-8c7a-00c04fc297eb
    Setting ProtectionPolicy
    データ型 DWORD
    1
    OS の再起動が要求されました はい
    Notes OS

警告

ドメイン ユーザーが複数のコンピューターにログオンする場合は、このレジストリ キーを使用しないでください。 キーはローカルにバックアップされるため、ローカル以外のパスワードを変更すると、すべての DPAPI マスター キーが古いパスワードを使用してラップされ、ドメインの回復が不可能な状況が発生する可能性があります。 このレジストリ キーは、データ損失が許容される環境でのみ設定する必要があります。

詳細

トピック 詳細
Windows データ保護 Windows データ保護

DPAPI でのキーのバックアップと復元
コンピューターがドメインのメンバーである場合、DPAPI にはデータの保護を解除するためのバックアップ メカニズムがあります。 MasterKey が生成されると、DPAPI はドメイン コントローラーと対話します。 ドメイン コントローラーには、DPAPI のみに関連付けられたドメイン全体の公開キーと秘密キーのペアがあります。 ローカル DPAPI クライアントは、相互に認証されたプライバシー保護された RPC 呼び出しを使用して、ドメイン コントローラーの公開キーをドメイン コントローラーから取得します。 クライアントは、ドメイン コントローラーの公開キーを使用して MasterKey を暗号化します。 次に、このバックアップ MasterKey と、ユーザーのパスワードによって保護された MasterKey が格納されます。 データの保護を解除する際に、DPAPI がユーザーのパスワードで保護された MasterKey を使用できない場合は、相互認証およびプライバシー保護された RPC 呼び出しを使用して、バックアップ MasterKey をドメイン コントローラーに送信します。 ドメイン コントローラーは、その秘密キーを使用して MasterKey の暗号化を解除し、同じ保護された RPC 呼び出しを使用してクライアントに送信します。 この保護された RPC 呼び出しは、ネットワーク上でリッスンしているユーザーが MasterKey を取得できないようにするために使用されます。
RODC 配置に関する考慮事項 RODC 配置に関する考慮事項
動作を変更するリンクされた KB/この問題を開始します。 Windows RT 8.1、Windows 8.1、Windows Server 2012 R2 の 2014 年 11 月の更新プログラムのロールアップ (KB3000850)
Backup Key Remote Protocol doc 付録 B: 製品の動作
シークレットの Client-Side ラッピングの実行

BackupKey リモート プロトコル サーバーは、実際にはシークレットのリモート バックアップを実行しません。 代わりに、サーバーは各シークレットをラップしてクライアントに返します。 クライアントは、再度必要になるまでシークレットを格納する役割を担います。この時点で、クライアントはサーバーにシークレットのラップ解除を要求できます

3.1.4.1.3 BACKUPKEY_RETRIEVE_BACKUP_KEY_GUIDを参照してください