Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2003.10.16;
Скачать: [xml.tar.bz2];

Вниз

SQL Server 2000 ???   Найти похожие ветки 

 
domenicas   (2003-09-25 15:16) [0]

Не могу понять в чём дело? OC Windows2000
SQL Server 2000
Клиент SQL Server 2000
BDE Version 5.01
при попытке соединения с базой через BDE под пользователем с Win-аутенфикацией пол. сообщение "Unknown user name or password.
Login failed for user "(null)". Reason: Not associated with a trusted SQL Server connection.
Login incorrect.
Alias: D0"
____________
OC Windows98
SQL Server 2000
Клиент SQL Server 7.0
BDE Version 5.01
всё ок!
____________________________
приконектиться пытаюсь прямо из BDE-администратора
настройки BDE: http://domenicas.boom.ru/index.html Пожалуйста, помогите понять в чём дело!


 
Delirium   (2003-09-25 15:21) [1]

Забудь про связку BDE+MSSQL и пользуйся ADO+MSSQL, ибо так оно и должно быть.


 
Polevi   (2003-09-25 15:22) [2]

используй ADO


 
Reindeer Moss Eater   (2003-09-25 15:25) [3]

Не надо ничего забывать.
Что указано в параметре USER NAME в:

Configuration/Drivers/Native/MSSQL

?


 
domenicas   (2003-09-25 15:26) [4]

условия оговорены жестко - использовать BDE


 
Polevi   (2003-09-25 15:27) [5]

печально это


 
MOA   (2003-09-25 15:28) [6]

Зайдите в Client Network Utility, введите протокол Names Pipes и сделайте его верхним.
Удачи!


 
Delirium   (2003-09-25 15:31) [7]

BDE не поддерживает NT Integrated security


 
Reindeer Moss Eater   (2003-09-25 15:32) [8]

Все оно поддерживает


 
Delirium   (2003-09-25 15:39) [9]

NT Integrated security поддерживается на уровне ODBC или OLEDB, но не уровне драйверов BDE, можно заставить работать BDE c MSSQL c NT-аутентификацией, но посредством ODBC.


 
Reindeer Moss Eater   (2003-09-25 15:45) [10]

Всю жизнь у меня работала такая связка с NT Auth:

BDE + SQL Links.

И не было никакого ODBC


 
domenicas   (2003-09-25 15:48) [11]

Reindeer Moss Eater пишет:
Не надо ничего забывать.
Что указано в параметре USER NAME в:

Configuration/Drivers/Native/MSSQL
________________
ничего не забыто, USER NAME - пустой, и в данном случаё при соединении туда должен подставляться доменный пользователь


 
Delirium   (2003-09-25 15:48) [12]

Как называется драйвер?


 
Delirium   (2003-09-25 15:50) [13]

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


 
Stas   (2003-09-25 15:53) [14]

Reindeer Moss Eater © (25.09.03 15:32) [8]

BDE не поддерживает часть свойств MSSQL SERVER 2000.
ADO - это не ODBC.


 
Reindeer Moss Eater   (2003-09-25 15:54) [15]

Вот как раз если вписать имя пусть даже доменного пользователя, то будет SQL Server auth, и не будет NT auth


 
Reindeer Moss Eater   (2003-09-25 15:56) [16]

Reindeer Moss Eater © (25.09.03 15:32) [8]

BDE не поддерживает часть свойств MSSQL SERVER 2000.
ADO - это не ODBC.


Я чем-то дал понять, что не знаю ни первого ни второго?


 
Delirium   (2003-09-25 15:58) [17]

"Вот как раз если вписать имя пусть даже доменного пользователя, то будет SQL Server auth, и не будет NT auth" - Вот именно, я думаю мы путаешь ODBC драйвер (Type=SQL Server) и BDE-шный (Type=MSSQL)


 
Stas   (2003-09-25 16:02) [18]

Reindeer Moss Eater © (25.09.03 15:32) [8]
Все оно поддерживает


 
domenicas   (2003-09-25 16:04) [19]

Reindeer Moss Eater пишет:
Вот как раз если вписать имя пусть даже доменного пользователя, то будет SQL Server auth, и не будет NT auth
_________________________
и что, каждого пользователя домена заходящего с данной раб.станции заставлять лезть в BDE и прописывать себя??????


 
Reindeer Moss Eater   (2003-09-25 16:06) [20]

Stas © (25.09.03 16:02) [18]
Reindeer Moss Eater © (25.09.03 15:32) [8]
Все оно поддерживает


Для тех кто в танке:

Delirium © (25.09.03 15:31) [7]
BDE не поддерживает NT Integrated security


Reindeer Moss Eater © (25.09.03 15:32) [8]
Все оно поддерживает


 
Delirium   (2003-09-25 16:06) [21]

> domenicas (25.09.03 16:04) [19]

Создай ODBC соединение с NT-аутентификацией, этот источник будет поддерживаться и BDE, вот и работай с ним.


 
Reindeer Moss Eater   (2003-09-25 16:07) [22]

Reindeer Moss Eater пишет:
Вот как раз если вписать имя пусть даже доменного пользователя, то будет SQL Server auth, и не будет NT auth
_________________________
и что, каждого пользователя домена заходящего с данной раб.станции заставлять лезть в BDE и прописывать себя??????


Вот как раз если вписать имя пусть даже доменного пользователя, то будет SQL Server auth, и не будет NT auth


 
domenicas   (2003-09-25 16:08) [23]

Reindeer Moss Eater пишет:
Вот как раз если вписать имя пусть даже доменного пользователя, то будет SQL Server auth, и не будет NT auth
_________________________
ок, прописал доменного пользователя - результат тот же.


 
Stas   (2003-09-25 16:09) [24]

>>Reindeer Moss Eater ©
>>Для тех кто в танке

Ладно, необижайся


 
Reindeer Moss Eater   (2003-09-25 16:10) [25]

TDataBase.DriverName:="MSSQL"; //Это SQL Links, а не ODBC

Вот это всегда работало с проверкой подлинности средствами NT.
Если не пускает на сервер, значит юзер ОС не авторизован в NT или этому пользователю NT не дано логониться к SQL серверу


 
Reindeer Moss Eater   (2003-09-25 16:11) [26]

domenicas
ок, прописал доменного пользователя - результат тот же.


Зачем прописал-то?


 
Delirium   (2003-09-25 16:13) [27]

Когда наконец устанете вписывать и выписывать пользователей и обратитесь к документации BDE, обнаружите - что там нет ни слова о NT-аутентификации, тогда может перестанете издеваться над устаревшей технологией и перейдёте хотя бы на ODBC.


 
Delirium   (2003-09-25 16:15) [28]

"TDataBase.DriverName:="MSSQL"; //Это SQL Links, а не ODBC
Вот это всегда работало с проверкой подлинности средствами NT" - никогда в это не поверю, потому что такого не может быть.


 
Reindeer Moss Eater   (2003-09-25 16:17) [29]

То что там нет ни слова еще не значит, что её нельзя использовать. В том числе без ODBC.

Когда наконец устанете вписывать и выписывать пользователей и обратитесь к документации BDE,

К документации по SQL Links тоже наверное надо обратиться.


 
Reindeer Moss Eater   (2003-09-25 16:19) [30]

Вот это всегда работало с проверкой подлинности средствами NT" - никогда в это не поверю, потому что такого не может быть.

Зачем верить в то, что легко проверяется?


 
Delirium   (2003-09-25 16:21) [31]

"Зачем верить в то, что легко проверяется?" - разумеется, я проверил сие неоднократно.


 
Reindeer Moss Eater   (2003-09-25 16:25) [32]

разумеется, я проверил сие неоднократно.

Неправильно проверил значит. Хотя это странно если учесть
Увлечения / хобби
Delphi и MSSQL


Работает это и на ура работает.


 
Reindeer Moss Eater   (2003-09-25 16:30) [33]

Не работать может по одной смешной причине.
В параметрах BDE по умолчанию (см.[3]) оставляют дефолтное "MYNAME", а в свойствах алиаса старательно стирают имя пользователя, забывая, что на сервер уйдет "MYNAME" при этом.

Случай когда на сервере вообще не включена NT auth не рассматриваем


 
Delirium   (2003-09-25 16:30) [34]

Давай по действиям, может откорешь для меня что-то новое.
И так, я в BDE Administrator создаю новый линк типа MSSQL прописываю SERVER NAME и DATABASENAME, "Apply" что дальше ?


 
Delirium   (2003-09-25 16:31) [35]

MYNAME я конечно удалил


 
Delirium   (2003-09-25 16:33) [36]

"Login failed for user (null)" - естественно, попытка аутентификации с пустым логином именно к этому диалогу и приводит.


 
Reindeer Moss Eater   (2003-09-25 16:34) [37]

И так, я в BDE Administrator создаю новый линк типа MSSQL прописываю SERVER NAME и DATABASENAME, "Apply" что дальше ?

Дальше щелкаем на квадратик слева от имени алиаса и в логон скрине ничего не добавляя давим на "Ок".


 
Delirium   (2003-09-25 16:34) [38]

А поисходит это потому, что BDE ничего не знает об альтернативной технологии аутентификации


 
Reindeer Moss Eater   (2003-09-25 16:39) [39]

А поисходит это потому, что BDE ничего не знает об альтернативной технологии аутентификации

Я этому могу найти иное объяснение. Например не все сетевые библиотеки клиента MSSQL допускают trusted connection.

А вот объясните мне как мой TDatabase1 с именем драйвера "MSSQL" уже много лет соединяется с MSSQL используя NT auth. При этом у всех доменных пользователей совершенно различные права на различные объекты базы данных.


 
Delirium   (2003-09-25 16:41) [40]

Могу предположить, что у тебя не защищённый "sa" например, или ещё какой-нибудь логин вроде того-же "MYNAME" есть на MSSQL и без пароля.


 
Reindeer Moss Eater   (2003-09-25 16:45) [41]

Могу предположить, что у тебя не защищённый "sa" например, или ещё какой-нибудь логин вроде того-же "MYNAME" есть на MSSQL и без пароля.

Как быть с реально разными правами на объекты?

К тому же смена пароля у "sa" - первое мое инстинктивное действие после установки сервера


 
Delirium   (2003-09-25 16:51) [42]

Добился! :)

Действительно всё дело в протоколах обмена, Named pipes по видимому перехватывет null в логине, и подменяет режим аутентификации :)


 
Delirium   (2003-09-25 17:00) [43]

ВЫВОД: То, что BDE-шный драйвер по одному из протоколов, всё-же коннектится с NT-аутентификацией, заслуга не BDE, а организации самого протокола Named pipes. Что кстати подтверждает MSDN
Anonymous Pipe Security and Access Rights

Windows NT security enables you to control access to anonymous pipes. For more information about security, see Access-Control Model.

You can specify a security descriptor for a pipe when you call the CreatePipe function. The security descriptor controls access to both the read and write ends of the pipe. If you specify NULL, the pipe gets a default security descriptor. The ACLs in the default security descriptor for a pipe come from the primary or impersonation token of the creator.

To retrieve a pipe"s security descriptor, call the GetSecurityInfo function. To change a pipe"s security descriptor, call the SetSecurityInfo function.

The CreatePipe function returns two handles to the anonymous pipe: a read handle with GENERIC_READ and SYNCHRONIZE access; and a write handle with GENERIC_WRITE and SYNCHRONIZE access. GENERIC_READ and GENERIC_WRITE access use the same access rights mapping as for named pipes.

GENERIC_READ access for an anonymous pipe combines the rights to read data from the pipe, read pipe attributes, read extended attributes, and read the pipe"s DACL.

GENERIC_WRITE access for an anonymous pipe combines the rights to write data to the pipe, append data to it, write pipe attributes, write extended attributes, and read the pipe"s DACL.


 
domenicas   (2003-09-25 19:28) [44]

Дамы и Господа всем душевное Спасибо, общими стараниями проблема решена!
Вывод:

Пробл"з появляется в случае когда.
1)Используется SQL Server 2000
2)Client SQL Server"a 2000
3)Использование протокола TCP/IP
____________________________________
Выход в таком сочетании необходимо использовать протокол
Named Pipes
P.S. бага не проявляется если используется либо клиент, либо сервер 7-ой версии


 
Filat   (2003-09-25 19:39) [45]

domenicas ты хочешь сказать что все с SQL 7.0 гачит?
Оч. хорошо! А как вариант на будущее что новый MS SQL не поддерживает 7.0 и через раз 2000-й, что потом будешь делать?



Страницы: 1 2 вся ветка

Форум: "Базы";
Текущий архив: 2003.10.16;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.55 MB
Время: 0.012 c
1-51331
Chlavik
2003-09-30 17:06
2003.10.16
TextFile и Tstrings.LoadFromFile


6-51366
SergP
2003-08-20 01:31
2003.10.16
Вопрос об OnDisconnect в Tclient/serversocket


6-51391
Печкин
2003-08-20 18:32
2003.10.16
Ограничение числа сокетов


1-51284
NewD
2003-10-06 11:14
2003.10.16
Не работает Web Server Application


6-51375
frost
2003-08-13 11:40
2003.10.16
Outlook and itc.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский