|
|
|
SqlStringConnect
|
|||
|---|---|---|---|
|
#18+
Пытаюсь програмно создать соединение с MS SQL через драйвер ODBC: Driver={SQL Server};Server=myServerAddress;Database=myDataBase;Trusted_Connection=Yes; вроде получается. Но коннект создаётся независимо от того есть ли у пользователя права на доступ к БД, непускает только в том случае если пользователь совсем не зарегистрирован на сервере. Знаю, что можно конкретно задавать имя пользователя и пароль: Driver={SQL Server};Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword; Но тут проблема, как узнать имя пользователя в домене и его пароль, поскольку програмой будут пользоватся разные пользователи домена. Как быть? Подскажите пожалуйста ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2006, 19:31 |
|
||
|
SqlStringConnect
|
|||
|---|---|---|---|
|
#18+
Конкретно имя пользователя и его пароль можно указывать только если сервер допускает такую авторизацию. При этом логины и пароли прописываются на самом сервере. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2006, 20:35 |
|
||
|
SqlStringConnect
|
|||
|---|---|---|---|
|
#18+
shantonПытаюсь програмно создать соединение с MS SQL через драйвер ODBC: Driver={SQL Server};Server=myServerAddress;Database=myDataBase;Trusted_Connection=Yes; вроде получается. Но коннект создаётся независимо от того есть ли у пользователя права на доступ к БД, непускает только в том случае если пользователь совсем не зарегистрирован на сервере. В данном случае используется Windows Authentication (Trusted Connection - MS SQL Server её поддерживает всегда). Пользователь (или Windows группа, куда он входит) должен иметь Login на SQL сервере. Наличие Login - это необходимое, но не достаточное условие для работы с конкретной базой данных на сервере. В общем случае в этой базе данных должен быть пользователь (User), связанный с Login на сервере (или пользователь guest). Этому пользователю затем дают разрешения (permission) на объекты базы данных. Также, еще есть права за счет членства в ролях (группах) сервера или базы данных, права за счет владения объекта. В общем, советую почитать HELP по MS SQL (Book On Line или BOL). shanton Знаю, что можно конкретно задавать имя пользователя и пароль: Driver={SQL Server};Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword; Но тут проблема, как узнать имя пользователя в домене и его пароль, поскольку програмой будут пользоватся разные пользователи домена. Как быть? Подскажите пожалуйста При таком подключении используется SQL Authentication. MS SQL Server должен работать в режиме Mixed Mode (Windows Authentication and SQL Server Authentication). При этом на сервере должен быть создан SQL Login (в вашем случае myUsername) с указанным паролем (myPassword). А далее.. смотри все, что я сказал про пользователей базы данных выше. Если вы с сервером уже соединились, то имя пользователя и домен можно узнать через системную функцию сервера: SUSER_SNAME() С уважением, Алексей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2006, 08:52 |
|
||
|
|

start [/forum/topic.php?fid=41&fpage=218&tid=1590114]: |
0ms |
get settings: |
8ms |
get forum list: |
10ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
33ms |
get topic data: |
8ms |
get forum data: |
3ms |
get page messages: |
38ms |
get tp. blocked users: |
1ms |
| others: | 252ms |
| total: | 359ms |

| 0 / 0 |
