ログインとして機能するドメイングループでWindows認証を使用するSQL Server 2005名前付きインスタンスがあります。ドメイン構造は次のとおりです。
_ Forest1 Forest2
/ \ |
Domain1 Domain2 Domain3
_
オブジェクトは次のドメインに編成されます。
Forest1.Domain1
Forest1.Domain2
Forest2.Domain3
すべてのユーザーは_Domain1
_および_Domain3
_に存在しますが、SQL Serverボックスは_Domain2
_に存在します。そのため、私のログインは_Domain2
_のドメイングループです。 _Domain1
_のユーザーが_Domain2
_のドメインローカルグループに追加され、TCP/IPプロトコルを使用してSQL Serverインスタンスに接続しようとすると、次のエラーメッセージが表示されます。
<インスタンス>に接続できません。ユーザー 'Domain1\userName'のログインに失敗しました。 (Microsoft SQL Server、エラー:18456)
私が試した他のこと:
ユーザーをログインとして明示的に追加すると、接続できます。
ユーザーがログインとしてメンバーである_Domain1
_グローバルグループを明示的に追加すると、彼は接続できます。
ユーザーがログインとして使用される_Domain1
_ドメインローカルグループのメンバーとしてメンバーである_Domain2
_グローバルグループを追加すると、彼は接続できません。
EDIT:SQL Serverをホストしている_Domain2
_サーバーのDemote Desktop Usersグループに_Domain2
_ドメインローカルグループを追加した場合インスタンス、_Domain1
_ユーザーはサーバーに正常に接続できます-また、_Domain1
_ユーザーとしてインスタンスにローカルに接続できます(リモートではありません)。
EDIT:_Domain2
_ドメインローカルグループをローカルサーバーグループに追加し、そのローカルサーバーグループのSQL Serverログインを作成すると、 _Domain1
_ユーザーは引き続きインスタンスにリモートで接続できません。
EDIT:接続ネットワークプロトコルを「名前付きパイプ」に変更すると、_Domain1
_ユーザーはリモートで正常に接続できます。
私が理解していることから(これらのTechNet記事を参照: グループスコープ および ネストグループ )、ドメイングループは両方の_Domain1
_および_Domain3
_。
ドメイングループに_Domain1
_と_Domain3
_の両方のユーザーを含めることができ、ユーザーがTCP/IP経由でリモート接続できるように、Windows認証を使用してSQL Serverログインとしてドメイングループを使用するにはどうすればよいですか?
その他の注記
Domain1
_のユーザーアカウントです[〜#〜] update [〜#〜]
SQLサービスインスタンスのサービスアカウントを_Domain2
_に変更すると、問題が解決したようです。さらに調査し、調査結果をポストバックします!
私の質問の更新で述べたように、サービスアカウントをDomain2
に変更すると問題が解決しました。それで、何が起こっていたのでしょうか?
問題-説明
サービスアカウントは元々Domain1
ユーザーであったため、ユーザーの認証時に接続しているユーザーがどのドメインローカルグループであるかを判断できませんでした。 Kerberos。これがKerberosの問題であるという主な原因は、NTLM認証を使用するため、「名前付きパイプ」を使用して正常に接続したことです。
全体的なソリューション
まとめて、Domain1
およびDomain3
のユーザーをDomain2
のグループのメンバーとして正常に追加して、グループをWindows認証でSQL Serverログインとして使用できるようにするには、次のリストを参照してください。要件の(または少なくとも強く推奨):
Domain2
がDomain1
およびDomain3
を信頼するように、一方向の信頼を設定する必要がありますDomain2
のグループは、「ドメインローカル」をスコープにする必要がありますDomain1
およびDomain3
からユーザーとグループを追加できるようにするためです。Domain2
ユーザーをサービスアカウントIDとして指定しますDomain2
ユーザーアカウントで適切に更新されていることを確認してください。Domain2
サービスアカウントのサービスプリンシパル名(SPN)を構成します。Domain2
サービスアカウントを委任に対して信頼できるようにすることが必要な場合がありますDomain2
グループのログインを作成し、Domain1
またはDomain3
メンバーがリモートで接続できるようにします。注
他のリモートネットワークアクティビティと同様に、ファイアウォールをチェックして、SQL Serverポートがブロックされていないことを確認します。デフォルトのポートは1433ですが、ポートがクリアであることを確認してください。
OK、私は2017年にも問題を解決しましたが、解決策を見つけるのは難しいです、最後に、私は自分の場合にのみそれを見つけ出します。
私の環境、
フォレスト1(ドメイン1)---信頼---フォレスト2(ドメイン2)
Windows認証を使用してDomain1のSQLサーバーにログインしようとするDomain2のサービスアカウントがあります。
そして、次のエラーメッセージがポップアップします。
ログインに失敗しました。ログインは信頼できないドメインからのものであり、Windows認証では使用できません。 (Microsoft SQL Server、エラー:18452)
このソリューションは非常にシンプルで、domain1でActive Directoryドメインと信頼ツールを開き、
信頼->発信信頼->プロパティ->認証->「フォレスト全体の認証」に変更
私の問題は解決しました。