web-dev-qa-db-ja.com

SQL Server 2008-ログインに失敗しました。ログインは信頼されていないドメインからのものであり、Windows認証では使用できません

SQL Server 2008 Developerエディションをインストールしたばかりで、SQLCMD.exeを使用して接続しようとしていますが、次のエラーが発生します。

H:\>sqlcmd.exe -S ".\SQL2008"

Msg 18452, Level 14, State 1, Server DEVBOX\SQL2008, Line 1

Login failed. The login is from an untrusted domain and cannot be used with Windows authentication.

SQL Serverインスタンスは、SQL ServerおよびWindows認証モードを使用するように構成されています。 -U saを指定すると、正常にログインできますが、Windows認証を使用したいと思います。 SSMSとWindows認証を使用した接続は、正常に機能しているようです。

15
Tom Hunter

この問題が発生したのは、アプリケーションを実行しているマシンがActive Directoryによるドメインの委任に対して信頼されていないためです。たとえば、アプリケーションプールID DOMAIN_application.environmentの下で実行されている.netアプリの場合、マシンが信頼されていない限り、IDはSQLを呼び出すことができません。

6
Steve

Sqlcmd.exeに資格情報を渡していない

したがって、Windowsログイン資格情報を使用してユーザーを認証しようとしていますが、それらの資格情報を受け入れるようにSQL Serverをセットアップする必要はありません...

インストールするときに、サーバー管理者のパスワード(saアカウント用)を入力する必要がありました。

試してみてください...

sqlcmd.exe -U sa -P YOUR_PASSWORD -S ".\SQL2008"

参考のために、詳細があります here ...

5
Eoin Campbell

私の場合、このエラーはクライアントマシンの名前を変更したことが原因でした。 13文字を超える新しい名前を使用しましたが(警告にもかかわらず)、NETBIOS名が切り捨てられ、完全なマシン名とは異なりました。クライアントの名前を短い名前に変更すると、エラーはなくなりました。

3
cdonner

ちょうどこれを試しました:

H:> "C:\ Program Files\Microsoft SQL Server\90\Tools\Binn\sqlcmd.exe" -S "。\ SQL2008" 1>

動作します。(パスにMicrosoft SQL Server\100\Tools\Binnディレクトリがあります)。

しかし、SQL Server 2008バージョンのSQLCMDが機能しない理由はまだわかりません。

2
Tom Hunter

エラーは文字通り「Windows認証を使用しようとしていますが、ログインは信頼できるドメインからではありません」と言っています。ローカルマシンに接続しているので、これは奇妙です。

おそらく、ドメインアカウントではなくローカルアカウントを使用してWindowsにログインしていますか? SQL2008インスタンスのSQL Serverプリンシパルでもあるドメインアカウントでログインしていることを確認します。

1
Aaron Alton

私もこのエラーが発生しましたが、私の問題は、仮想マシンを介して2つの企業ネットワーク間をアクセス資格情報が異なるまま切り替え続けることでした。コマンドプロンプトを実行する必要がありました。

ipconfig /renew

この後、ネットワークの問題は解決され、SQLにもう一度接続できました。

0
ladygargar

ログオンするユーザー名とパスワードを指定していますか?あなたの完全なコマンドラインは正確には何ですか?

独自のボックスで実行している場合は、ユーザー名/パスワードを指定するか、-Eパラメータを使用してWindows資格情報でログオンします(SQLサーバーのインストールで許可されている場合)。

マーク

0
marc_s

ちょうどこのスレッドを見つけて、ここに別の回答(以下にコピー)を投稿しました: https://stackoverflow.com/a/37853766/1948625

特にこの質問では、コマンドラインの.値で使用されているドット "-S"が127.0.0.1と同じ意味の場合、接続文字列と同じ問題である可能性があります他の質問。代わりにホスト名を使用するか、hostsファイルを確認してください。


古い質問と私の症状は少し異なりますが、同じエラーです。私の接続文字列はdata source127.0.0.1に設定された正しいものでした(統合セキュリティ、およびユーザーとpwdは提供していません)。それは何年もの間うまくいった。

しかし、最近、テスト目的で静的ホストファイルに行を追加しました(C:\Windows\System32\drivers\etc\hosts

127.0.0.1           www.blablatestsite.com

この行を削除するとエラーはなくなります。

ホスト名とループバックについて話しているこの記事( https://support.Microsoft.com/en-gb/kb/896861 )から手がかりを得ました。

他の可能な修正(hostsファイルでその行を保持する必要がある場合)は、接続文字列のMYSERVER01127.0.0.1の代わりにホスト名(data sourceなど)を使用することです。

0
Thierry_S