Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Доступ к серверу по Инету
|
|||
|---|---|---|---|
|
#18+
Проблема - не могу добраться до своего сервера через инет. ODBC драйвер говорит что то об отсутствии трастового соединения с сервером ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.01.2002, 16:46 |
|
||
|
Доступ к серверу по Инету
|
|||
|---|---|---|---|
|
#18+
А какой метод аутентификации Вы используете? В Вашем случае IMHO удобнее было бы настроить сервер на использование смешанного метода, когда SQL сервер может сам авторизовать пользователей по логину и паролю. При этом трастового соединения не понадобится. Иначе вам придется сначала организовать вход вашей удаленной машины в домен, а уж потом коннектиться к серверу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.01.2002, 17:45 |
|
||
|
Доступ к серверу по Инету
|
|||
|---|---|---|---|
|
#18+
Вот вечно воды намутят вместо того чтобы код дать... Вот он для trust connections: >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ' Initialize variables. Set cnn = Server.CreateObject("ADODB.Connection") ' Put text box values into connection variables. ServerName = "ALA001" DatabaseName = "forum" ' Connection to SQL Server without using ODBC data source. cnn.Open "Driver={SQL Server};Server="&ServerName&";Trusted_Connection=yes;Database="&DatabaseName >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> И ODBS не нужен. Главное здесь последняя строка определяющая анонимное соединение k SQL Server. Однако на нем также должна быть заведена учетная запись интернет-пользователя IUSR_имясервера. А вот у меня другая проблема: Как получить имя пользователя домена, пытающегося получить доступ к ресурсам SQL сервера? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2002, 04:33 |
|
||
|
Доступ к серверу по Инету
|
|||
|---|---|---|---|
|
#18+
2Axl_Dead >Главное здесь последняя строка определяющая анонимное соединение k SQL Server. Это не анонимное, а доверительное соединение, при котором SQL Server доверяет сетевой аутентикации пользователя, т.е. просто обращается за подтверждением к соответсвующему компьютеру (контоллеру домена или локальной машине). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2002, 08:22 |
|
||
|
Доступ к серверу по Инету
|
|||
|---|---|---|---|
|
#18+
Да неверно выразился. Тем не менее это позволяет реализовать ДОВЕРИТЕЛЬНОЕ соединение для АНОНИМНОГО пользователя интернет созданного автоматически при инсталляции IIS. В противном случае придется заводить некого специальную пользовательскую запись с правами гостя как аккаунт домена так и пользователя БД. Да еще в скрипте прописывать имя и пароль пользователя. К тому же я не знаю не вызовет ли это конфликта пользовательских запросов. Все это мы уже проходили, а вот что по моему предыдущему вопросу? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2002, 07:16 |
|
||
|
Доступ к серверу по Инету
|
|||
|---|---|---|---|
|
#18+
На самом деле соединение происходит не между пользоателем и SQL, а между IIS и SQL, а вот SQL разрешает доступ IIS к своим ресурсам на основании добавленного вами логина IUSR_имясервера. Т.е. схема такая User -- WAN, Internet(http?) --> IIS server -- LAN(tcp/ip) --> SQL Таким образом IIS и SQL все равно находятся в одной локальной сети(домене). У Mici насколько я понимаю схема подключения такая User -- WAN, Internet(tcp/ip) --> SQL В этом случае говорить от доверительном подключении IMHO нельзя, если только не организована,например, VPN, которая даст пользователю возможность сначала попасть во внутреннюю сеть(залогиниться в домен). Поэтому как предложил cvasil, нужно использовать SQL аутентификацию. Кроме того, в некоторые готовые программы(QA, EM) невозможно вставить предложенный вами код К вашему вопросу. Ну а что вы хотели ? Вы используете ASP, который выполняется на серверной стороне(IIS сервером) от имени учетной записи, под которой стартует IIS и соединение с SQL сервером устанавливаете для этой же учетной записи. Так что для SQL все ваши пользователи скрываются за IIS. Можно наверное как-то получить данные о пользователе с помощью ASP и передавать их как параметры в запросах/процедурах. Но тут я пас - ASP не моя область, наверняка кто-то из участников форума лучше знаком с этой проблемой. Лично я использую SQL2000, где настроена поддержка XML. Там можно указать, как SQL аутентифицирует пользователя, который открывает XML. Я выбрал Windows Integrated Authentication. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2002, 07:52 |
|
||
|
Доступ к серверу по Инету
|
|||
|---|---|---|---|
|
#18+
Да действительно, об этом я не подумал. Собственно говоря вопрос был не SQL, а о ASP. Туда и надо переадресовать его. Мне просто не хочется заставлять своих editors допольнительно вводить пароли (оговорюсь речь идет о Intranet). А вот если бы удалось заставить IIS распознавать пользователя уже вошедшего в домен, было бы здорово... Или с группами поиграть? Включить их в некую условную группу домена и выдать права на редактирование таблиц. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2002, 08:24 |
|
||
|
Доступ к серверу по Инету
|
|||
|---|---|---|---|
|
#18+
IMHO даже если вы узнаете имя пользователя и его пароль в домене (скажем через Active Directory), то все равно не сможете использовать их в ASP для создания доверительного соединения, т.к. выполнение cnn.Open "Driver={SQL Server}; Server="&ServerName&"; Trusted_Connection=yes; Database="&DatabaseName происходит на стороне IIS сервера от имени его учетной записи и эти данные будут автоматически использоваться из-за Trusted_Connection=yes. По-моему так ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2002, 08:36 |
|
||
|
Доступ к серверу по Инету
|
|||
|---|---|---|---|
|
#18+
А если connection не trusted? Под какой записью тогда пользователь обращается к базе? Очевидно под той под которой он вошел в домен... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.01.2002, 07:02 |
|
||
|
Доступ к серверу по Инету
|
|||
|---|---|---|---|
|
#18+
При SQL authentication строка подключения выглядит так Driver={SQL Server}; Server="&ServerName&";UID=username;PWD=userpassowrd; Database="&DatabaseName и в этом случае SQL не проверяет авторизован пользователь в домене, а только имеется ли такой пользователь на самом SQL сервере(ну и пароль конечно). Т.е. если вы будете использовать такую строку подключения, прописанную явно, то опять же все конечные пользователи будут скрываться для SQL за этим логином. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.01.2002, 07:38 |
|
||
|
Доступ к серверу по Инету
|
|||
|---|---|---|---|
|
#18+
ASP позвлояет для intranet получить доменное имя пользователя вот его то и можно использовать для идентификации пользователя а как это делать вырезать ли из Domen\User - Usera и прописать в конекшен стринг (естественно все Usera должны существовать на SQL) или таскать везде параметром имя пользователя - дело вкуса, я пользую второй способ, чтобы не возиться с потдержкой большого числа пользователей на SQL. С уважением, Сергей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.01.2002, 08:10 |
|
||
|
Доступ к серверу по Инету
|
|||
|---|---|---|---|
|
#18+
2 Glory: Теперь все понятно с SQL. Спасибо! 2 SergD: Так это как раз то что и нужно! Если не трудно напишите как мне выдернуть имя user из домена. Черт с ним с паролем, у все равно все имена юзеров уникальные, а снаружи никто зайти не сможет. Заранее спасибо! Axl ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.01.2002, 08:37 |
|
||
|
Доступ к серверу по Инету
|
|||
|---|---|---|---|
|
#18+
Это все хранится в серверных переменных(IIS): Request.ServerVariables("LOGON_USER") И там много еще чего полезного есть Сергей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.01.2002, 09:09 |
|
||
|
Доступ к серверу по Инету
|
|||
|---|---|---|---|
|
#18+
Эти Variables я вдоль и поперек излазил, и на (Logon User) ясно дело внимание обращал. Только у меня эта переменная пустой остается. Может вы знаете в чем дело. Вот строка: <%Response.Write("Logon User="&Request.ServerVariables("LOGON_USER") )%> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.01.2002, 09:25 |
|
||
|
Доступ к серверу по Инету
|
|||
|---|---|---|---|
|
#18+
Скорее всего Вам на ваше Web приложение нужно явно указать Use unique permissions for this Web applications и сказать что пользователи домена могут его бровзить устанавливается это в Project->Web project из интердева или же через консоль управления IIS. Сергей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.01.2002, 09:38 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=32020520&tid=1824371]: |
0ms |
get settings: |
7ms |
get forum list: |
18ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
49ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
64ms |
get tp. blocked users: |
1ms |
| others: | 216ms |
| total: | 373ms |

| 0 / 0 |
