Подключите другого пользователя Windows в SQL Server Management Studio (2005 или более поздней версии) - PullRequest
313 голосов
/ 11 мая 2009

Есть ли способ в SQL Server Management Studio 2005 (или более поздней версии) изменить пользователя проверки подлинности Windows (как это можно сделать в SQL Server 2000 и более ранних версиях)?

Это общее диалоговое окно свойств соединения (обратите внимание на серые UID / PWD при выборе Windows Auth):

dialog

К вашему сведению - один из способов - использовать runas, но я ищу решение, которое позволило бы мне работать с несколькими учетными записями Windows на нескольких серверах (и в нескольких доменах).

Ответы [ 10 ]

406 голосов
/ 20 января 2010

Хотя невозможно подключиться к нескольким серверам в качестве разных пользователей в одном экземпляре SSMS, вам нужен следующий синтаксис RUNAS:

runas /netonly /user:domain\username program.exe

Когда вы используете ключ "/ netonly", вы можете войти в систему, используя удаленные учетные данные в домене, членом которого вы в данный момент не являетесь, даже если доверие не настроено. Он просто сообщает runas, что учетные данные будут использоваться для доступа к удаленным ресурсам - приложение взаимодействует с локальным компьютером в качестве текущего пользователя, вошедшего в систему, и взаимодействует с удаленными компьютерами как пользователь, чьи учетные данные вы указали.

Вам все равно придется запускать несколько экземпляров SSMS, но по крайней мере вы можете подключаться как разные пользователи Windows в каждом.


Например: runas /netonly /user:domain\username ssms.exe
154 голосов
/ 03 октября 2011

Удерживайте shift и щелкните правой кнопкой мыши значок изучения SQL Server Mangement. Вы можете запускать как другой пользователь Windows.

108 голосов
/ 17 сентября 2009

Еще один способ, который я обнаружил, - это «Пуск»> «Панель управления»> «Сохраненные имена пользователей и пароли» (Администрирование> Диспетчер учетных данных в Windows 7) и добавить учетную запись домена, которую вы будете использовать с «» Рунас "команда.

Затем в SQL Management Studio 2005 просто выберите «Аутентификация Windows» и введите сервер, к которому вы хотите подключиться (даже если пользователь, которого вы видите серым, все еще является локальным пользователем) ... и это работает!

Не спрашивайте меня, почему! :)

Edit: Обязательно включайте «: 1433» после имени сервера в диспетчере учетных данных, иначе он может не подключиться из-за недоверия домену.

10 голосов
/ 29 сентября 2016

Команда runas /netonly /user:domain\username program.exe работала только для меня на Windows 10

  • сохранение в виде командного файла
  • работает как администратор,

при запуске пакета команд от имени обычного пользователя у меня возникла проблема с неверным паролем, о которой некоторые пользователи упоминали в предыдущих комментариях.

6 голосов
/ 06 ноября 2014

Ни один из этих ответов не сделал то, что мне было нужно: Войдите на удаленный сервер, используя учетную запись домена, отличную от той, на которой я вошел на локальный компьютер, и это домен клиента через vpn. Я не хочу быть в их домене!

Вместо этого в диалоговом окне подключения к серверу выберите «Проверка подлинности Windows», нажмите кнопку «Параметры», а затем на вкладке «Дополнительные параметры подключения» введите «идентификатор пользователя = домен \ пользователь; пароль = пароль» без кавычек.

SSMS не запомнит, но подключится к этой учетной записи.

3 голосов
/ 24 марта 2018

Немного магии PowerShell сделает свое дело:

cmdkey /add:"SERVER:1433" /user:"DOMAIN\USERNAME" /pass:"PASSWORD"

Затем просто выберите аутентификацию Windows

1 голос
/ 11 мая 2009

Есть много мест, где кто-то может захотеть развернуть такой сценарий, но из-за того, как работает интегрированная аутентификация, это невозможно.

Как уже упоминалось, встроенная аутентификация использует специальный токен, который соответствует вашей личности Windows. Существуют методы кодирования, называемые «олицетворением» (вероятно, используемые командой «Запуск от имени ...»), которые позволяют эффективно выполнять действия в качестве другого пользователя Windows, но в действительности нет способа произвольно действовать как другой пользователь (например Linux) в приложениях Windows, кроме этого.

Если вам действительно нужно администрировать несколько серверов в нескольких доменах, вы можете рассмотреть один из следующих вариантов:

  1. Установите Доверие домена между вашими доменами, чтобы ваша учетная запись имела доступ к компьютерам в доверяющем домене
  2. Настройте пользователя SQL (используя смешанную аутентификацию) на всех серверах, которые необходимо администрировать, чтобы вы могли войти таким образом; очевидно, это может создать некоторые проблемы с безопасностью и создать кошмар обслуживания, если вам придется изменить все пароли в какой-то момент.

Надеюсь, это поможет!

0 голосов
/ 23 мая 2019

для Windows 10: Перейдите к значку Sql Management Studio или ярлыку в меню: Щелкните правой кнопкой мыши> Выбрать местоположение открытого файла

enter image description here

Удерживайте Shift и щелкните правой кнопкой мыши ярлык или файл ssms.exe, который находится в папке. Удержание смены даст вам дополнительную опцию «Запуск от имени другого пользователя»:

enter image description here

Откроется окно входа в систему, и вы сможете ввести учетные данные, под которыми вы хотите запустить сеанс.

0 голосов
/ 11 мая 2009

Единственный способ достичь желаемого - открыть несколько экземпляров SSMS, щелкнув правой кнопкой мыши по ярлыку и используя функцию «Запуск от имени».

0 голосов
/ 11 мая 2009

номер

Не могли бы вы в SQL Server 2000 Enterprise Manager? Я не помню, потому что аутентификация Windows использует текущего вошедшего в систему пользователя, потому что она использует маркер входа NT, сгенерированный во время входа в систему.

Единственный способ в «Запуск от имени».

У вас нет доверия между доменами?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...