У меня есть экземпляр с именем SQL Server 2005 с использованием проверки подлинности Windows с группами доменов, которые служат в качестве логинов. Доменные структуры следующие:
Forest1 Forest2
/ \ |
Domain1 Domain2 Domain3
Объекты организованы в следующих доменах:
Forest1.Domain1
- Пользователи
- Глобальные группы
Forest1.Domain2
- Экземпляр SQL Server
- Локальные группы домена (выступающие в качестве логинов)
Forest2.Domain3
- Пользователи
- Глобальные группы
Все мои пользователи существуют в Domain1
и Domain3
, но поле SQL Server существует в Domain2
. Таким образом, мои логины являются группами домена в Domain2
. Когда пользователь из Domain1
добавляется в локальную группу домена в Domain2
и пытается подключиться с использованием протокола TCP/IP к экземпляру SQL Server, он получает следующее сообщение об ошибке:
Невозможно подключиться к < экземпляру > . Ошибка входа для пользователя "Domain1\userName". (Microsoft SQL Server, ошибка: 18456)
Другие вещи, которые я пробовал:
-
Если я добавлю пользователя в качестве логина явно, он может подключиться.
-
Если я добавлю глобальную группу
Domain1
который пользователь является участником входа в систему явно, он может подключиться. -
Если я добавлю глобальную группу
Domain1
который пользователь является участником член локального доменаDomain2
группа, используемая в качестве логина, не может подключения. -
EDIT:. Если я добавлю локальную группу домена
Domain2
в группу пользователей Demote Desktop Users на сервереDomain2
, где размещен экземпляр SQL Server, пользовательDomain1
может успешно подключитесь к серверу - я также могу подключиться к экземпляру локально как пользовательDomain1
(просто не удаленно). -
EDIT:. Если я добавлю локальную группу домена
Domain2
в локальную группу серверов и создаю логин SQL Server для этой локальной группы серверов, пользовательDomain1
все еще не сможет подключиться к экземпляру удаленно. -
EDIT: Если я изменю протокол сети подключения на "Именованные каналы", пользователь
Domain1
может успешно подключиться удаленно.
Из того, что я понимаю (ссылаясь на эти статьи TechNet: Область группы и Nesting Groups), доменная группа ДОЛЖНА быть локальной группой домена, чтобы включить пользователей из Domain1
и Domain3
.
Как я могу использовать группу домена в качестве входа в SQL Server с использованием проверки подлинности Windows, так что группа домена может содержать пользователей как из Domain1
, так и Domain3
, и пользователи могут подключаться удаленно через TCP/IP?
БОЛЬШЕ ПРИМЕЧАНИЯ
- Учетная запись службы для экземпляра с именем SQL Server является учетной записью пользователя в
Domain1
- SPN были добавлены для учетной записи службы (включая имена серверов и псевдонимы)
UPDATE
Изменение учетной записи службы экземпляра службы SQL, находящейся в Domain2
, похоже, решило проблему. Я продолжу расследование и опубликую мои результаты!