Windows ベースのコンピューターでイベント ID 5788 と 5789 が発生する

この記事では、Windows ベースのコンピューターで DNS ドメイン名と Active Directory ドメイン名が異なる場合に、イベント ID 5788 とイベント ID 5789 がログに記録される問題の解決策について説明します。

適用対象: Windows 7、Windows Server 1、Windows Server 2012 R2
元の KB 番号: 258503

現象

次のいずれかの問題が発生する可能性があります。

  • Windows Vista 以降のバージョンでは、対話型ログオン中に次のエラー メッセージが表示されます。

    サーバー上のセキュリティ データベースには、このワークステーションの信頼関係のコンピューター アカウントがありません。

  • ドメイン ベースのアカウントを使用した対話型ログオンは機能しません。 ローカル アカウントを持つログオンのみが機能しています。

  • 次のイベント メッセージがシステム ログに記録されます。

    イベントの種類: エラー
    イベント ソース: NETLOGON
    イベント カテゴリ: なし
    イベント ID: 5788
    コンピューター: ComputerName
    説明:
    Active Directory のコンピューター オブジェクトのサービス プリンシパル名 (SPN) の更新が失敗しました。 次のエラーが発生しました: <原因に応じて異なる詳細なエラー メッセージ。>

    イベントの種類: エラー
    イベント ソース: NETLOGON
    イベント カテゴリ: なし
    イベント ID: 5789
    コンピューター: コンピューター
    説明:
    Active Directory のコンピューター オブジェクトの DNS ホスト名の更新が失敗しました。 次のエラーが発生しました: <原因に応じて異なる詳細なエラー メッセージ。>

    注:

    これらのイベントの詳細なエラー メッセージは、「原因」セクションに記載されています。

原因

この動作は、コンピューターがActive Directory Domain Services (AD DS) ドメイン内のコンピューター アカウントの dNSHostName 属性と servicePrincipalName 属性に書き込まない場合に発生します。

次の条件に該当する場合、コンピューターはこれらの属性を更新しようとします。

  • Windows ベースのコンピューターがドメインに参加した直後に、コンピューターは新しいドメイン内のコンピューター アカウントの dNSHostName 属性と servicePrincipalName 属性を設定しようとします。
  • AD DS ドメインのメンバーになっている Windows ベースのコンピューターでセキュリティ チャネルが確立されると、コンピューターはドメイン内のコンピューター アカウントの dNSHostName 属性と servicePrincipalName 属性を更新しようとします。
  • Windows ベースのドメイン コントローラーでは、Netlogon サービスは servicePrincipalName 属性を 22 分ごとに更新しようとします。

更新エラーには、次の 2 つの原因が考えられます。

  • コンピューターには、コンピューター アカウントの dNSHostName 属性または servicePrincipalName 属性の LDAP 変更要求を完了するための十分なアクセス許可がありません。

    この場合、「現象」セクションで説明されているイベントに対応するエラー メッセージは次のとおりです。

    • イベント 5788

      アクセスが拒否されました。

    • イベント 5789

      指定されたファイルが見つかりません。

  • コンピューターのプライマリ DNS サフィックスが、コンピューターがメンバーである AD DS ドメインの DNS 名と一致しません。 この構成は"Disjoint 名前空間" と呼ばれます。

    たとえば、コンピューターは Active Directory ドメイン contoso.comのメンバーです。 ただし、その DNS FQDN 名は です member1.nyc.contoso.com。 そのため、プライマリ DNS サフィックスが Active Directory ドメイン名と一致しません。

    属性値の前提条件の書き込み検証が失敗するため、この構成では更新がブロックされます。 既定では、セキュリティ アカウント マネージャー (SAM) では、コンピューターのプライマリ DNS サフィックスが、コンピューターがメンバーである AD DS ドメインの DNS 名と一致する必要があるため、書き込み検証は失敗します。

    この場合、「現象」セクションで説明されているイベントに対応するエラー メッセージは次のとおりです。

    • イベント 5788

      ディレクトリ サービスに指定された属性構文が無効です。

    • イベント 5789

      パラメーターが間違っています。

解決方法

この問題を解決するには、「原因」セクションで説明されているように、最も可能性の高い原因を見つけます。 次に、原因に適した解決策を使用します。

原因 1 の解決策

この問題を解決するには、コンピューター アカウントに、独自のコンピューター オブジェクトを更新するための十分なアクセス許可があることを確認する必要があります。

ACL エディターで、トラスティ アカウント "SELF" のアクセス制御エントリ (ACE) があり、次の拡張権限に対する "許可" アクセスがあることを確認します。

  • DNS ホスト名への検証済み書き込み
  • 検証済みのサービス プリンシパル名への書き込み

次に、適用される可能性がある拒否アクセス許可を確認します。 コンピューターのグループ メンバーシップを除き、次のトラスティもコンピューターに適用されます。

  • すべてのユーザー
  • Authenticated Users
  • SELF

これらのトラスティに適用される ACE は、属性への書き込みアクセスを拒否することも、"検証済み DNS ホスト名への書き込み" または "サービス プリンシパル名への検証済み書き込み" 拡張権限を拒否することもできます。

原因 2 の解決策

この問題を解決するには、必要に応じて、次のいずれかの方法を使用します。

方法 1: 意図しない不整合名前空間を修正する

不整合な構成が意図せず、連続する名前空間に戻す場合は、このメソッドを使用します。

Windows Server 2003 で連続する名前空間に戻す方法の詳細については、次の Microsoft TechNet の記事を参照してください。
不整合な名前空間から連続する名前空間への移行
Windows Server 2008 および Windows Vista 以降のバージョンについては、次の Microsoft TechNet の記事を参照してください。
誤って作成された不整合名前空間を元に戻す

方法 2: 不整合な名前空間構成が正しく動作していることを確認する

不整合な名前空間を保持する場合は、このメソッドを使用します。 これを行うには、次の手順に従って、いくつかの構成を変更してエラーを解決します。

不整合な名前空間が Windows Server 2003 R2、Windows Server 2003、Windows Server 2003 Service Pack 1 (SP1)、および Service Pack 2 (SP2) を使用した Windows Server 2003 で正しく動作していることを確認する方法の詳細については、次の Microsoft TechNet 記事を参照 してください。
不整合な名前空間が Windows Server 2008 R2 および Windows Server 2008 で正しく動作していることを確認する方法の詳細については、次の Microsoft TechNet の記事「不整合な名前空間を作成する」を参照してください。

"原因" セクションの最後の主要な箇条書きで説明されている例を拡張することで、許可されたサフィックスとして 属性に追加 nyc.contoso.com します。

詳細

この記事の以前のバージョンでは、この問題を解決するための一般的な書き込みアクセスを有効にするために、コンピューター オブジェクトのアクセス許可を変更する方法について説明しました。 これは、Windows 2000 に存在する唯一のアプローチでした。 ただし、msDS-AllowedDNSSuffixes を使用するよりも安全性は低くなります。

msDS-AllowedDNSSuffixes は、クライアントが Active Directory に任意の SPN を書き込むのを制限します。 "Windows 2000 メソッド" を使用すると、クライアントは Kerberos が他の重要なサーバーを操作できないようにする SPN を記述できます (重複を作成します)。 msDS-AllowedDNSSuffixes を使用すると、他のサーバーがローカル コンピューターと同じホスト名を持っている場合にのみ、このような SPN の競合が発生する可能性があります。

LDAP 変更要求への応答のネットワーク トレースには、次の情報が表示されます。
win: 17368, src: 389 dst: 1044

LDAP: ProtocolOp: ModifyResponse (7)

LDAP: MessageID

LDAP: ProtocolOp = ModifyResponse

LDAP: 結果コード = 制約違反

LDAP: エラー メッセージ = 0000200B: AtrErr: DSID-03151E6D このネットワーク トレースでは、200B 16 進数は 8203 decimal と等しくなります。

net helpmsg 8203 コマンドは、次の情報を返します。ディレクトリ サービスに指定された属性構文が無効です。Network Monitor 5.00.943 には、"制約違反" という結果コードが表示されます。Winldap.h は、エラー 13 を "LDAP_CONSTRAINT_VIOLATION にマップします。

次の条件の 1 つ以上が当てはまる場合、DNS ドメイン名と Active Directory ドメイン名が異なる場合があります。

  • TCP/IP DNS 構成には、コンピューターがメンバーである Active Directory ドメインとは異なる DNS ドメインと、[ ドメイン メンバーシップの変更時にプライマリ DNS サフィックスを変更 する] オプションが無効になっています。 このオプションを表示するには、[ マイ コンピューター] を右クリックし、[ プロパティ] をクリックし、[ ネットワーク識別 ] タブをクリックします。

  • Windows Server 2003 ベースまたは Windows XP Professional ベースのコンピューターでは、プライマリ サフィックスを Active Directory ドメインとは異なる値に設定するグループ ポリシー設定が適用される場合があります。 グループ ポリシー設定は次のとおりです。コンピューターの構成\管理用テンプレート\Network\DNS クライアント: プライマリ DNS サフィックス

  • ドメイン コントローラーは、Rendom.exe ユーティリティによって名前が変更されたドメインにあります。 ただし、管理者は以前の DNS ドメイン名から DNS サフィックスを変更しました。 ドメイン名の変更プロセスでは、DNS ドメイン名の名前変更に続く現在の DNS ドメイン名と一致するようにプライマリ DNS サフィックスは更新されません。 同じ階層ドメイン名を持たない Active Directory フォレスト内のドメインは、別のドメイン ツリー内にあります。 フォレスト内に異なるドメイン ツリーがある場合、ルート ドメインは連続していません。 ただし、この構成では、不整合な DNS 名前空間は作成されません。 複数の DNS または Active Directory DNS ルート ドメインがあります。 不整合な名前空間は、プライマリ DNS サフィックスと、コンピューターがメンバーである Active Directory ドメイン名の違いによって特徴付けられます。

不整合な名前空間は、一部のシナリオでは注意して使用できます。 ただし、すべてのシナリオでサポートされているわけではありません。