Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Перенос логинов в другой домен  [new]
Yayaadmin
Guest
Сервер, а вместе с ним все логины мигрируют в другой домен, т.е. по сути будет создаваться новый пользователь, права у которого должны быть точны такие же как у старого (включая Grant на хранимки, read для одной таблицы и т.д. только для этого юзера). Т.е. как я это вижу, мы вытаскиваем права для этого юзера и присваиваем их новому юзеру. Вопрос, есть ли другой способ, если нет, как вытащить все права юзера, включая права как отдельные столбцы в отдельных таблицах?
7 сен 16, 12:08    [19636690]     Ответить | Цитировать Сообщить модератору
 Re: Перенос логинов в другой домен  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 8815
Yayaadmin,

если у вас нет явных разрешений, то проблема вообще никаких - скриптуете роли и разрешения уровня базы.
Иначе придется скриптовать объекты и возиться с настройками скриптования.
7 сен 16, 12:19    [19636762]     Ответить | Цитировать Сообщить модератору
 Re: Перенос логинов в другой домен  [new]
komrad
Member

Откуда:
Сообщений: 5742
Yayaadmin,

смотрите в сторону sys.server_permissions & sys.database_permissions & sys.server_role_members

select * from sys.server_role_members
select * from sys.server_permissions
select * from sys.database_permissions  -- для каждой базы
7 сен 16, 12:30    [19636849]     Ответить | Цитировать Сообщить модератору
 Re: Перенос логинов в другой домен  [new]
o-o
Guest
заполнить таблицу соответствий старых и новых логинов.
старые дропнуть, новые создать.
потом курсором по каждой базе пройти и всем юзерам сделать
alter user ... with login = ...

где логин это новый логин
---
разрешения в базе даны не сидам, а principal_id.
и они не поменяются.
мы лишь обновляем сиды
7 сен 16, 12:51    [19637032]     Ответить | Цитировать Сообщить модератору
 Re: Перенос логинов в другой домен  [new]
andrey odegov
Member

Откуда:
Сообщений: 473
Посмотрите на sid-history.
М.б. вопрос больше к админам AD?
7 сен 16, 12:55    [19637070]     Ответить | Цитировать Сообщить модератору
 Re: Перенос логинов в другой домен  [new]
yayaadmin
Guest
[quot Владислав Колосов]Yayaadmin,

если у вас нет явных разрешений quot]

То то и оно, они могут быть, в ручную не проверить (несколько десятков серверов, сотни баз и оч. много пользователей).
Видимо необходимо для каждого юзера запускать sp_helprotect и если там что то есть то добавлять еще и эти права, если нет то строим скрипт сначала создавая логин, а потом юзеров связанных с этим логином.
7 сен 16, 12:55    [19637072]     Ответить | Цитировать Сообщить модератору
 Re: Перенос логинов в другой домен  [new]
yayaadmin
Guest
o-o
заполнить таблицу соответствий старых и новых логинов.
старые дропнуть, новые создать.
потом курсором по каждой базе пройти и всем юзерам сделать
alter user ... with login = ...

где логин это новый логин
---
разрешения в базе даны не сидам, а principal_id.
и они не поменяются.
мы лишь обновляем сиды


Попробовал, работает! Спасибо.
Создал нового юзера, но уже в другом домене, выполнил alter user ... with login = ... на нужной бд для старого usera и все разрешения, включая явную grant на хранимку остались.
7 сен 16, 13:04    [19637142]     Ответить | Цитировать Сообщить модератору
 Re: Перенос логинов в другой домен  [new]
yayaadmin
Guest
andrey odegov
Посмотрите на sid-history.
М.б. вопрос больше к админам AD?


Возможно, но нам сказали SID будет новый, как говориться, не обсуждается.
7 сен 16, 13:05    [19637168]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить