Как подключиться к SQL Server с проверкой подлинности Windows, если не войти в систему с этим именем пользователя? - PullRequest
8 голосов
/ 15 июня 2011

Мы создали локальное имя пользователя Windows на сервере базы данных и использовали его на отдельном компьютере в пуле приложений IIS7 в той же рабочей группе. Приложение веб-сайта работает для входа на сервер базы данных.

Сейчас я на своей машине, работающей в VS 2010, и пытаюсь получить удаленный доступ к базе данных. Пользователь и рабочая группа не соответствуют на моей машине веб-серверам / серверам баз данных, поэтому я явно указываю имя пользователя и пароль. Когда я пытаюсь подключить VS 2010 к SQL Server 2008, я получаю следующую ошибку:

Cannot open user default database.  Login failed.
Login failed for user 'myuser'. (Microsoft SQL Server, Error: 4064)

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

Как войти в систему с использованием проверки подлинности Windows, если ваше локальное имя пользователя и рабочая группа отличаются от имени пользователя и рабочей группы сервера базы данных?

Это сработало, чтобы включить проверку подлинности SQL, включить учетную запись sa и войти в систему с моей домашней машины. Он не будет входить в систему с помощью «myuser» удаленно, но работает локально.

Ответы [ 2 ]

7 голосов
/ 15 июня 2011

Команда "runas" почти работает:

runas /netonly /user:domain\username "devenv.exe"

Вам будет предложено ввести пароль.Вы также можете использовать «cmd.exe» в качестве последнего параметра для получения командной строки от имени этого другого пользователя.

Как я уже сказал, он почти работает для меня.Я был в состоянии соединиться прежде, но не использую SSMS успешно.Я имел дело и с VPN, поэтому, если у вас менее ограниченный путь к серверу, возможно, он будет работать лучше для вас.

6 голосов
/ 16 июля 2011

Я делаю это постоянно с SQL Server Management Studio для SQL Server 2008 и 2005 (и VS 2010). RUNAS работает отлично, но SSMS по-прежнему будет отображать ваше локальное имя пользователя на экране входа. Просто игнорируйте это, и вы сможете без проблем получить доступ к базе данных. Например: если ваша локальная учетная запись mylaptop \ fma1 и вы входите в домен mycompany как mycompany \ jsmith, SSMS по-прежнему будет говорить «mylaptop \ fma1», но будет входить в базу данных как mycompany \ jsmith.

У Microsoft есть дополнение Sysinternals под названием «Shell Run As», которое позволяет вам делать это из Explorer:

http://technet.microsoft.com/en-us/sysinternals/cc300361

Просто скопируйте загруженный файл в соответствующий каталог, запустите .exe с параметром / regnetonly в качестве аргумента, и вы сможете щелкнуть правой кнопкой мыши и запустить от имени другого пользователя.

...