Ключи утилиты SETSPN

Автор Antonik, 21.08.06, 13:04:59

« предыдущая - следующая »

0 Пользователей и 1 гость просматривают эту тему.

Muk

Цитата: Sugonyaev от 24.08.06, 07:32:38
У сервера должна быть роль Сервер приложений (Aplication server)

На самом деле, для работы Лоцман под Win2003 из всей роли Aplication server важен только флажок "Enable network COM+ access".
Я бы в FAQ добавил, если кто-нибудь подтвердит этот факт.

Antonik

флажок стоит

Sugonyaev

Так и не удалось чтоли поставить Лоцман на сервак? Какую версию Лоцман ставиш?

Antonik

версия 7.1sp2a

поставить удалось все и все работает, но через идентификацию на SQL
а хотелось бы через win
т.е. как я понимаю сервер приложений никак не хочет передавать на sql сервер информацию о пользователе

Максим Хмеляр

Цитата: Antonik от 23.08.06, 13:06:32
Вы можете подключится к данному SQL серверу с проверкой подлинности средствами Windows именно от той учетной записи, к той же базе, с той же машины

как, какой программой? Только лоцману это надо.

есть маленькая программка SQL Viewer (демо версия) - она даже не под админом подключается к SQL и видит все базы в том числе и лоцмановскую, показывает локальный путь и время создания базы, а также тип данных в таблице.


Также есть программка Enterprise Manager
запустите ее, выберите ваш SQL сервер, вызовите контекстное меню, выберите пункт "Edil SQL Server Registration properties ...", в появившемся окне выберите "Use Windows authentification" и просмотрите пройдет ли подключение к серверу с использованием учетной записи Windows
если подключение пройдет, а в ЛОЦМАНе ошибка останется, будем разбираться дальше.

Antonik

" ... и просмотрите пройдет ли подключение к серверу с использованием учетной записи Windows
если подключение пройдет, а в ЛОЦМАНе ошибка останется, будем разбираться дальше. "

Дело в том, что я с сервера приложений без проблем запускаю Лоцман под win-аутентификацией.
С клиента - никак.

Максим Хмеляр

30.08.06, 14:31:10 #26 Последнее редактирование: 30.08.06, 15:23:48 от Администратор
ЦитироватьТакже есть программка Enterprise Manager
запустите ее, выберите ваш SQL сервер, вызовите контекстное меню, выберите пункт "Edil SQL Server Registration properties ...", в появившемся окне выберите "Use Windows authentification" и просмотрите пройдет ли подключение к серверу с использованием учетной записи Windows


Попробуйте, пожалуйста, проделать описанное с клиентской машины.

Antonik

" Попробуйте, пожалуйста, проделать описанное с клиентской машины. "

Как я с клиента зайду, там не установлен Enterprise Manager?
Кроме того надо иметь права на клиенте и права админа на SQL сервере.

Максим Хмеляр

Цитата: Antonik от 31.08.06, 05:40:25
Как я с клиента зайду, там не установлен Enterprise Manager?
Кроме того надо иметь права на клиенте и права админа на SQL сервере.


Необходимо установить Enterprise Manager на _другую_ машину где нет СП и проверить соединение с SQL сервером зайдя под учетной записью, обладающей соответствующими полномочиями.

Antonik

а для чего все это городить? и так ведь понятно что сервер приложения не передает данные win пользователя на SQL и не факт что дополнительным Enterprise Manager можно это проверить. Придется ведь клиента запускать под админом SQL, подключаться непосредственно к SQL серверу без делегерования, и в чем проверка?
Получиться ситуация такая же что с сервера приложений мы без проблем подключаемся к SQL под win пользователем.

Максим Хмеляр

таким образом проверится соединение клиентской машины с SQL сервером

Максим Хмеляр

Если соединение с SQL сервером успешно проходит с машины, где установлен сервер приложений ЛОЦМАН, а при открытии базы данных выдается ошибка "[DBNETLIB][ConnectionOpen(Connect()).]SQL Server does not exist or access denied"
значит дело в соединении с SQL сервером с клиентской машины, других причин быть не может.
Проверьте, возможно учетная запись клиента, у которого возникает ошибка, не имеет прав на SQL сервер.
Такое может быть в случае, если база данных была восстановлена из резервной копии или перенесена с другого SQL сервера.
Запустите Enterprise manager, выберите ваш SQL сервер, перейдите к папке Security, в ней выберите пункт Logins и убедитесь, что в списке присутствует учетная запись пользователя, который пытается подключиться к серверу.

LDL

Проверьте, клиент заведен в групппу LoodsmanUsers. И его имя "имя домена\имя пользователя"?
Книги следует читать так же неторопливо и бережно, как они писались

Antonik

а какие права должен иметь клиент на SQL?
Клиента мы прописываем через Лоцман-администратор, какие еще права?

Максим Хмеляр

как можно решать проблему если вы не делаете того, что вас просят проверить?
Пользователь присутствует в Security-Logins ?

Antonik

Дело в том, что по соображениям безопасности администратор SQL у нас отдельный человек в другом здании.
Установка делалась по руководству пользователя и в нем написано, что пользователей надо добавлять через оболочку Лоцман-администратор, зачем кого-то где-то проверять? Можно всем пользователям дать права администраторов домена и все замечательно будут работать, только недолго.
Спасибо, что Вы нами занимаетесь, но просто описываю ситуацию еще раз:
1. Через Лоцман-администратор добавляем пользователя с авторизацией Windows, выбирая его из предлагаемого списка. При подключении выдается описанная выше ошибка.
2. Через Лоцман-администратор добавляем пользователя с авторизацией SQL, прописывая произвольное имя. Подключение происходит замечательно.
Значит:
  1. Пользователь с Windows авторизацией заходит только на сервер приложений, на SQL сервер его данные не передаются, поэтому приходиться дополнительно инициализировать его по имени, внесенному в базу.
  2. На сам физический сервер, несущий на себе SQL функции пользователя пускают с любым видом идентификации. Независимо от того домен\юзер или SQL\юзер, просто домен\юзер не допускается к определенной базе хотя в ней прописан и домен\юзер и SQL\юзер.
Т.е. отсюда на мой взгляд очень четко и логично видно что сервер приложений теряет идентификационные данные пользователя и не передает их на SQL сервер.

Максим Хмеляр

31.08.06, 12:03:37 #36 Последнее редактирование: 31.08.06, 12:15:58 от Максим Хмеляр
ЛОЦМАН Администратор не работает через сервер приложений, он подключается напрямую к серверу БД.
следовательно, сервер приложений ЛОЦМАН ни при чем, а дело в соединении клиенсткой машины и сервера БД.

Antonik

"  дело в соединении клиенсткой машины и сервера БД "
Но ведь клиент то ходит через сервер приложений? Или нет?
Зачем нужен сервер приложений если клиент идет напрямую к SQL серверу?
Сервер приложений ведь передачное звено, причем с учетной записью администратора домена, который имеет практически неограниченные права.
Зачем клиентской машине соединятся напрямую с сервером БД?
Я пытался с клиента зайти под учетной записью админа, который имеет права добавлять пользователей в лоцман-администратор и та же самая ошибка.

Максим Хмеляр

Цитировать
Но ведь клиент то ходит через сервер приложений? Или нет?


Да, клиент ЛОЦМАН "ходит" через сервер приложений.

Цитировать
... причем с учетной записью администратора домена, который имеет практически неограниченные права ....


Категорически не рекомендуется запускать сервер приложений от встроенной учетной записи администратора домена. У этой учетной записи невозможно выставить опцию "Учетная запись доверена для делегирования"

Antonik

" Следовательно, сервер приложений ЛОЦМАН ни при чем, а дело в соединении клиентской машины и сервера БД. "
" Да, клиент ЛОЦМАН "ходит" через сервер приложений. "
?

" Категорически не рекомендуется запускать сервер приложений от встроенной учетной записи администратора домена. "
Создали спец. учетную запись с правами администратора домена.