Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Авторизация в SQL Server 2000

1 view
Skip to first unread message

Vladimir Mikhaylenko

unread,
Nov 6, 2006, 12:06:38 PM11/6/06
to
───────────┤ Under this sun and sky, we are warmly hailing All! ├────────────

Сорри, вопрос несколько не в топик... Есть программка которая желает получать
данные с SQL Server 2000. Hа сервере используется авторизация Windows.
Соответственно вопрос: как составить Connection String для SqlConnect, чтобы
программа могла работать с сервером.

Используется такой код:

string connstring = @"workstation id=MAINFRAME;packet size=4096;user id=" +
txtUserName.Text + @";data source=""" + txtSrvName.Text + @""";persist security
info=False;initial catalog=" + txtDBName.Text;

SqlConnection connection = new SqlConnection(connstring);
SqlDataAdapter dataAdapter = new SqlDataAdapter("", connstring);
connection.Open();

Hа моей машине все ОК. Там заведен пользователь dbs_user с пустым паролем,
поэтому программа просто получает все нужные данные.
Hа той машине, на которой должна работать эта программа имеется аккаунт user,
паролем user. Query Analyzer спокойно работает... Как пустить программу. Если в
txtUserName написать user - пишет Login failed...
Можно ли передать пароль в ConnectionString?


┌─┤ Follow the Moon, All...├─┤ Monday, November 6 ,2006: 08:06 PM ├──────────┐
3/11: Liquideyes - Closure (Original Mix) "Perfecto presents DFuze - People
CD #1"/2003/Dance/House

Alexander Rozenbaum

unread,
Nov 14, 2006, 11:37:58 AM11/14/06
to
Приветствую тебя, Mikhaylenko Vladimir. Тут я заметил, что 06 Nov 06 20:06:38 ты понаписал:
VM> Сорри, вопрос несколько не в топик... Есть программка которая желает
VM> получать данные с SQL Server 2000. Hа сервере используется авторизация
VM> Windows. Соответственно вопрос: как составить Connection String для
VM> SqlConnect, чтобы программа могла работать с сервером.

VM> Используется такой код:

VM> string connstring = @"workstation id=MAINFRAME;packet size=4096;user
VM> id=" + txtUserName.Text + @";data source=""" + txtSrvName.Text +
VM> @""";persist security info=False;initial catalog=" + txtDBName.Text;

VM> SqlConnection connection = new SqlConnection(connstring);
VM> SqlDataAdapter dataAdapter = new SqlDataAdapter("", connstring);
VM> connection.Open();

VM> Hа моей машине все ОК. Там заведен пользователь dbs_user с пустым
VM> паролем, поэтому программа просто получает все нужные данные.
VM> Hа той машине, на которой должна работать эта программа имеется аккаунт
VM> user, паролем user. Query Analyzer спокойно работает... Как пустить
VM> программу. Если в txtUserName написать user - пишет Login failed...
VM> Можно ли передать пароль в ConnectionString?

Hичего не понял. Какая всё-таки аутентификация нужна? Windows или SQL-Server?

Всего тебе самого самого... ну чего бы тебе хотелось? Ах не надо??!!??

Vladimir Mikhaylenko

unread,
Nov 14, 2006, 1:16:38 PM11/14/06
to
ВАААААЗ Replying ЖАААААААААААААААААЗ Date: Tuesday, November 14 ,2006 ЖААААААГ
Б From: Alexander Rozenbaum а To: Vladimir Mikhaylenko Б
ДИАААААААААААААААААААААААААААААААААААААААААААААААААААЗ Time: 07:37 PM ЖАААААИЕ
ДААААААЗ Under this sun and sky, we are warmly hailing Alexander! ЖААААААААЕ

[... skipped ...]

AR> H╔▐┼╟╧ ╬┼ ╨╧╬╤╠. ы┴╦┴╤ ╫╙г-╘┴╦╔ ┴╒╘┼╬╘╔╞╔╦┴├╔╤ ╬╒╓╬┴? Windows ╔╠╔
AR> SQL-Server?

Ї┼╨┼╥╪ ╒╓┼ ╬╔╦┴╦┴╤. ў╙┼ ╙┴═╧ ╥┴╙╙╧╙┴╠╧╙╪. H╧ ╫╧╨╥╧╙ ╧╙╘┴╠╙╤.
H╒╓╬╧ ▐╘╧┬┘ ╨╥╧╟╥┴══┴ ╨╧╠╒▐┴└▌┴╤ ─┴╬╬┘┼ ╙ SQL-╙┼╥╫┼╥┴ ═╧╟╠┴ ╥┴┬╧╘┴╘╪ ╔┌ ╨╧─
╧┬┘▐╬╧╟╧ ╫╔╬─╧╫╙╦╧╟╧ ┴╦╦┴╒╬╘┴, ─╠╤ ╦╧╘╧╥╧╟╧ ╬┴ ╙┼╥╫┼╥┼ ╙╘╧╤╘ ╬┼╧┬╚╧─╔═┘┼
╥┴┌╥┼█┼╬╔╤. Ё┴╥╧╠╪ ─╠╤ ▄╘╧╟╧ ┴╦╦┴╒╬╘┴ ╤ ┌╬┴└.

с╚, ─┴! SQL Server 2000.

ВАЗ Follow the Moon, Alexander...ЖАЗ Tuesday, November 14 ,2006: 09:16 PM ЖААГ
8/13: Nakaido "Chabo" Reichi - Ahoudori No Ballade (Idiot Fowl's Ballad)
"Serial Experiments Lain OST"/1999/Anime/Rock

Sergei Andreev

unread,
Nov 15, 2006, 6:41:46 AM11/15/06
to
> string connstring = @"workstation id=MAINFRAME;packet size=4096;user id="
+
> txtUserName.Text + @";data source=""" + txtSrvName.Text + @""";persist
security
> info=False;initial catalog=" + txtDBName.Text;
...
> Можно ли передать пароль в ConnectionString?
А что-нить типа ...+ @";password=" + txtUserPwd.Text +... не пробовал?


Vladimir Mikhaylenko

unread,
Nov 15, 2006, 12:48:10 PM11/15/06
to
ВАААААЗ Replying ЖАААААААААААААААААЗ Date: Wednesday, November 15 ,2006 ЖААААГ
Б From: Sergei Andreev а To: Vladimir Mikhaylenko Б
ДИАААААААААААААААААААААААААААААААААААААААААААААААААААЗ Time: 02:41 PM ЖАААААИЕ
ДААААААЗ Under this sun and sky, we are warmly hailing Sergei! ЖАААААААААААЕ

SA> с ▐╘╧-╬╔╘╪ ╘╔╨┴ ...+ @";password=" + txtUserPwd.Text +... ╬┼ ╨╥╧┬╧╫┴╠?

workstation id=MAINFRAME;packet size=4096;
integrated security=SSPI;
^^^^^^^^^^^^^^^^^^^^^^^^^^
data source=MAINFRAME;persist security info=False;initial catalog=Northwind

╔ ╫╧╘ ╬┴═ ╨╔╥╧╓╧╦.

ВАЗ Follow the Moon, Sergei...ЖАЗ Wednesday, November 15 ,2006: 08:46 PM ЖАААГ
9/12: Die Apokalyptischen Reiter - Geopfert "All You Need Is
Love"/2000/Sympho Black/Death Metal

Alexander Rozenbaum

unread,
Nov 15, 2006, 2:08:54 PM11/15/06
to
Приветствую тебя, Mikhaylenko Vladimir. Тут я заметил, что 14 Nov 06 21:16:38 ты понаписал:

AR>> Hичего не понял. Какая всё-таки аутентификация нужна? Windows или
AR>> SQL-Server?

VM> Теперь уже никакая. Все само рассосалось. Hо вопрос остался.
VM> Hужно чтобы программа получающая данные с SQL-сервера могла работать
VM> из под обычного виндовского аккаунта, для которого на сервере стоят
VM> необходимые разрешения. Пароль для этого аккаунта я знаю.

VM> Ах, да! SQL Server 2000.

Hу и каша в голове...
Windows-аутентификация для того и нужна, чтобы пароля никакого в программе не
хранить. Пароль вводит юзверь при логине в домен/хост. Потом запускает
программу. И она уже от прав этого юзверя идет в SQL-сервер.

Более того, можно даже прозрачную делегацию полномочий настроить.
Юзверь интернет-эксплорером идет скажем на веб-страничку, а IIS, хостящий эту
страничку за данными идет в SQL-сервер или, например, в файловое хранилище,
размещенные на третьем хосте, проходя на этих ресурсах авторизацию как будто
сам первичный пользователь. Чтобы это сделать нужно понимать как Kerberos
работает.

Вот 100% рабочая строка соединения для такой аутентификации:
"packet size=4096;integrated security=SSPI;data source=_ServerName_;persist
security info=False;initial catalog=_DatabaseName_"

Vladimir Mikhaylenko

unread,
Nov 15, 2006, 3:00:08 PM11/15/06
to
┌─────┤ Replying ├─────────────────┤ Date: Wednesday, November 15 ,2006 ├────┐
│ From: Alexander Rozenbaum ═ To: Vladimir Mikhaylenko │
└┬───────────────────────────────────────────────────┤ Time: 10:08 PM ├─────┬┘
└──────┤ Under this sun and sky, we are warmly hailing Alexander! ├────────┘

AR>>> Hичего не понял. Какая всё-таки аутентификация нужна? Windows или
AR>>> SQL-Server?
VM>> Теперь уже никакая. Все само рассосалось. Hо вопрос остался.
VM>> Hужно чтобы программа получающая данные с SQL-сервера могла

VM>> работать из под обычного виндовского аккаунта, для которого на
VM>> сервере стоят необходимые разрешения. Пароль для этого аккаунта я
VM>> знаю.


VM>> Ах, да! SQL Server 2000.

AR> Hу и каша в голове...

[открыл голову, попробовал кашу - вкусная! Правда с комками...] ^____^

AR> Windows-аутентификация для того и нужна, чтобы пароля никакого в
AR> программе не хранить. Пароль вводит юзверь при логине в домен/хост.
AR> Потом запускает программу. И она уже от прав этого юзверя идет в
AR> SQL-сервер.

Это я и сам знаю.

AR> Более того, можно даже прозрачную делегацию полномочий настроить.
AR> Юзверь интернет-эксплорером идет скажем на веб-страничку, а IIS,
AR> хостящий эту страничку за данными идет в SQL-сервер или, например, в
AR> файловое хранилище, размещенные на третьем хосте, проходя на этих
AR> ресурсах авторизацию как будто сам первичный пользователь. Чтобы это
AR> сделать нужно понимать как Kerberos работает.

Hеплохое решение...

AR> Вот 100% рабочая строка соединения для такой аутентификации:
AR> "packet size=4096;integrated security=SSPI;data
AR> source=_ServerName_;persist security info=False;initial
AR> catalog=_DatabaseName_"

Разобрались. Все равно спасибо.

┌─┤ Follow the Moon, Alexander...├─┤ Wednesday, November 15 ,2006: 10:58 PM ├─┐
5/8: Kitaro - Sun "Ki"/1981/New Age

0 new messages