web-dev-qa-db-ja.com

runasコマンドを使用してSQLServerにリモートログインする

この時点で、runasコマンドを使用してスタックしています。そのサーバーでWindows認証を使用してリモートSQLServerインスタンスにログインしようとしています。私はこのコマンドを使用しています-

runas /netonly /user:Domain\Username 
      /server=someIP "C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\VSShell\Common7\IDE\Ssms.exe"

しかし、これを行うと、Management Studioが開きます。IPはリモートサーバーのものであり、Windows認証がデフォルトで選択されており、現在のシステムのドメインとユーザー名があります。

実際には、リモートSQL Serverにログインしてクエリを実行するために、接続文字列を指定する方法が必要です。クロスドメインです。

もう1つの質問-クエリを実行するマシンにManagementStudioが必要ですか?

ありがとう。

[〜#〜]編集[〜#〜]

理解を深めるために言い換えています。

サーバーAとサーバーB(2台の別々のコンピューター)があります。 AからBでクエリを実行する必要があります。AにはSQLサーバーまたは管理スタジオがありません。 Bには両方があります。 BのSQLサーバーにログインするには、Windows認証(myDomain\usernameなど)を使用する必要があります。Bの管理スタジオのプロパティの[ターゲット]で説明したrunasコマンドを使用しています。間違っていますか? Bにログインする必要があるのとは異なるユーザー名(ただし同じドメイン)を使用してAにログインしています。このタスクを実行するにはどうすればよいですか?

編集が遅れてしまい申し訳ありません。

12
Kumar Vaibhav

ショートカットで以下を使用して、ドメインにないxpイメージでSSMSを実行し、ドメイン資格情報を使用してサーバーに接続します。

%windir%\System32\runas.exe /netonly /user:domain\username "C:\Program Files\Microsoft SQL Server\100\Tools\Binn\VSShell\Common7\IDE\Ssms.exe -S SERVERNAME"
19
TEEKAY

これは正しいです。/netonlyは現在の環境を開き、SSMSはログインダイアログに資格情報を愚かに表示します。/netonlyは、提供されたIDが使用されることを実際に意味するためですネット上でのみ。ただし、リモートリソースで認証する場合、リモートサイトは「ドメイン\ユーザー名」として認証します。

おそらく/ serverオプションは必要ありません。

6
Remus Rusanu

コメントできないので、新しい答えを出します。サーバー名でショートカットを使用するには

%windir%\System32\runas.exe /netonly /user:domain\username "C:\Program Files (x86)\Microsoft SQL Server\140\Tools\Binn\ManagementStudio\Ssms.exe -S SERVERNAME"

まず、サーバー名とサーバーIPをホストファイルに追加する必要があります。

C:\Windows\System32\drivers\etc\hosts

それがないと、サーバーIPを使用する必要があります。

%windir%\System32\runas.exe /netonly /user:domain\username "C:\Program Files (x86)\Microsoft SQL Server\140\Tools\Binn\ManagementStudio\Ssms.exe -S SERVER_IP"

たとえば、アカウント名STACKUSER2019を使用して、ドメインMASTERの名前MSSQLSERVER01を使用してサーバー10.10.10.123に接続するとします。したがって、次の行をHostファイルに追加します。

10.10.10.123 MSSQLSERVER01

cMDまたはショートカットから実行した後:

%windir%\System32\runas.exe /netonly /user:MASTER\STACKUSER2019 "C:\Program Files (x86)\Microsoft SQL Server\140\Tools\Binn\ManagementStudio\Ssms.exe -S MSSQLSERVER01"
1
Kusio

ステップ1: ssms.exeファイルに移動します

SSMS 2016バージョン:

_C:\Program Files (x86)\Microsoft SQL Server\130\Tools\Binn\ManagementStudio\Ssms.exe
_

SSMS 2017バージョン:

_C:\Program Files (x86)\Microsoft SQL Server\140\Tools\Binn\ManagementStudio\Ssms.exe
_

右クリック on ssms.exeそして選択プロパティ

次に、タブ互換性

ボタンをクリックしますすべてのユーザーの設定を変更します

チェックこのプログラムを管理者として実行そして[OK]をクリックします

ステップ2:このパスでショートカットを作成します

SSMS 2016バージョン:C:\Windows\System32\runas.exe /savecred /user:domain\username "cmd /c \"C:\Program Files (x86)\Microsoft SQL Server\130\Tools\Binn\ManagementStudio\Ssms.exe\""

SSMS 2017バージョン:C:\Windows\System32\runas.exe /savecred /user:domain\username "cmd /c \"C:\Program Files (x86)\Microsoft SQL Server\140\Tools\Binn\ManagementStudio\Ssms.exe\""

注:パス内のcmd/c、これにより全体の違いが生じます。

それでおしまい。それがあなたのために働くことを願っています。

[〜#〜] ps [〜#〜]:ステップ1について、特定のユーザーの管理者としてアプリケーションを起動するように変更するだけの場合は、コンピューターにそのユーザーとしてログインし、 すべてのユーザーの設定を変更するなしの手順と同じようにします

0
Paw J

名前付きパイプを使用した接続が利用できない場合(つまり、SERVERNAMEを使用して接続できない場合)、IPアドレスを使用できます(例:

_%windir%\System32\runas.exe /netonly /user:domain\username "Ssms.exe -S 10.20.30.10"
_

_SSMS.exe_へのパスは、SQLエンジンのバージョンによって異なります。

  • 2008 R2:C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\VSShell\Common7\IDE\Ssms.exe
  • 2012:C:\Program Files (x86)\Microsoft SQL Server\110\Tools\Binn\ManagementStudio\Ssms.exe
  • 2014:C:\Program Files (x86)\Microsoft SQL Server\120\Tools\Binn\ManagementStudio\Ssms.exe
  • 2016:C:\Program Files (x86)\Microsoft SQL Server\130\Tools\Binn\ManagementStudio\Ssms.exe
0
Dio Phung