powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Подскажите по пермиссиям серверной роли dbcreator.
17 сообщений из 17, страница 1 из 1
Подскажите по пермиссиям серверной роли dbcreator.
    #39862351
hegth
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Привет.

Подскажите по пермиссиям роли dbcreator. Не понимаую почему у sql login есть пермиссия alter any database, а у windows user ее нет.
Соответственно для sql она раскрывается по covering на базу master, а у windows login такого нет. Может кто знает почему такая разница?

Спасибо.
...
Рейтинг: 0 / 0
Подскажите по пермиссиям серверной роли dbcreator.
    #39862374
Фотография Yasha123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hegthНе понимаую почему у sql login есть пермиссия alter any database, а у windows user ее нет.
потому что первый логин засунут в эту группу, а второй нет

hegthСоответственно для sql она раскрывается по covering на базу master, а у windows login такого нет. Может кто знает почему такая разница?
какое еще раскрытие и что есть covering?
фигня какая-то.
да, членство в роли dbcreator дает логину alter any database,
но при чем тут "она раскрывается по covering на базу master"?
серверное право или есть, или его нет, при чем тут какая-то база?
...
Рейтинг: 0 / 0
Подскажите по пермиссиям серверной роли dbcreator.
    #39862376
Фотография Yasha123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
**"первый логин засунут в эту группу" читать как "первый логин засунут в эту роль"
...
Рейтинг: 0 / 0
Подскажите по пермиссиям серверной роли dbcreator.
    #39862381
hegth
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Yasha123**"первый логин засунут в эту группу" читать как "первый логин засунут в эту роль"

Оба логина с этой ролью, но у windows user нет права "alter any database", а у sql user - есть. Вопрос почему так?
...
Рейтинг: 0 / 0
Подскажите по пермиссиям серверной роли dbcreator.
    #39862385
Фотография Yasha123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hegthYasha123**"первый логин засунут в эту группу" читать как "первый логин засунут в эту роль"

Оба логина с этой ролью, но у windows user нет права "alter any database", а у sql user - есть. Вопрос почему так?
ну так виндовый юзер можрет входить в группу, у которой deny alter any database.
или ему самому явно сделали deny alter any database
...
Рейтинг: 0 / 0
Подскажите по пермиссиям серверной роли dbcreator.
    #39862386
Фотография Yasha123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
2.
3.
4.
5.
6.
7.
exec as login = 'windows_login'

select *
from sys.login_token
where principal_id > 0;

revert;


выполните код, подставив нужный виндовый логин,
увидите, откуда еще он наследует права/запреты
...
Рейтинг: 0 / 0
Подскажите по пермиссиям серверной роли dbcreator.
    #39862387
hegth
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Yasha123hegthпропущено...


Оба логина с этой ролью, но у windows user нет права "alter any database", а у sql user - есть. Вопрос почему так?
ну так виндовый юзер можрет входить в группу, у которой deny alter any database.
или ему самому явно сделали deny alter any database

Нет, дело не в членствах и явных запретах. Просто так работае sql server(проверено эксперементами). А почему он так работает инфы найти не могу.
...
Рейтинг: 0 / 0
Подскажите по пермиссиям серверной роли dbcreator.
    #39862391
DaniilSeryi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hegthYasha123**"первый логин засунут в эту группу" читать как "первый логин засунут в эту роль"

Оба логина с этой ролью, но у windows user нет права "alter any database", а у sql user - есть. Вопрос почему так?

потому что самому windows user отдельно запрещено "alter any database", вот и всё. Запрет берёт верх над разрешением. или windows user засунули в ещё какую-нибудь группу / роль, у которой запрет на "alter any database"
...
Рейтинг: 0 / 0
Подскажите по пермиссиям серверной роли dbcreator.
    #39862396
Фотография Yasha123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hegthYasha123пропущено...

ну так виндовый юзер можрет входить в группу, у которой deny alter any database.
или ему самому явно сделали deny alter any database

Нет, дело не в членствах и явных запретах. Просто так работае sql server(проверено эксперементами). А почему он так работает инфы найти не могу.
вы продолжаете нести фигню.
вот мой код создает виндовый логин,
его засовывает в dbcreator,
затем проверяем права.
все с ними в порядке:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
create login [Dev4\Mary] from windows
alter server role dbcreator add member [Dev4\Mary];
exec as login = 'Dev4\Mary'

select system_user, *
from sys.fn_my_permissions(null, 'server')

revert;
...
Рейтинг: 0 / 0
Подскажите по пермиссиям серверной роли dbcreator.
    #39862398
hegth
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
hegthYasha123пропущено...

ну так виндовый юзер можрет входить в группу, у которой deny alter any database.
или ему самому явно сделали deny alter any database

Нет, дело не в членствах и явных запретах. Просто так работае sql server(проверено эксперементами). А почему он так работает инфы найти не могу.
exec as login = 'Windows login'
select *
from sys.login_token
where principal_id > 0;
revert;
288 0x0105000000000005150000008A035856B1986F5B58521245CB0D0000 Window login WINDOWS LOGIN GRANT OR DENY
2 0x02 public SERVER ROLE GRANT OR DENY
9 0x09 dbcreator SERVER ROLE GRANT OR DENY

EXECUTE AS Login = Windows Login';
SELECT * FROM fn_my_permissions(null, 'SERVER')
ORDER BY subentity_name, permission_name ;
REVERT;

server CONNECT SQL
server CREATE ANY DATABASE
server VIEW ANY DATABASE

SQL Login:
EXECUTE AS Login = 'SQL Login';
SELECT * FROM fn_my_permissions(null, 'SERVER')
ORDER BY subentity_name, permission_name ;
REVERT;

server ALTER ANY DATABASE
server CONNECT SQL
server CREATE ANY DATABASE
server VIEW ANY DATABASE
...
Рейтинг: 0 / 0
Подскажите по пермиссиям серверной роли dbcreator.
    #39862399
hegth
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Yasha123hegthпропущено...


Нет, дело не в членствах и явных запретах. Просто так работае sql server(проверено эксперементами). А почему он так работает инфы найти не могу.
вы продолжаете нести фигню.
вот мой код создает виндовый логин,
его засовывает в dbcreator,
затем проверяем права.
все с ними в порядке:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
create login [Dev4\Mary] from windows
alter server role dbcreator add member [Dev4\Mary];
exec as login = 'Dev4\Mary'

select system_user, *
from sys.fn_my_permissions(null, 'server')

revert;



А теперь создай sql login и сделай тоже самое.
...
Рейтинг: 0 / 0
Подскажите по пермиссиям серверной роли dbcreator.
    #39862402
Фотография Yasha123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
о да блин, да одинаковые у них права, вот вам скульный логин:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
create login dbcreator_login with password = '*****', check_policy = off;
alter server role dbcreator add member dbcreator_login;
exec as login = 'dbcreator_login'

select *
from sys.fn_my_permissions(null, 'server');

revert;


по вашему выхлопу скриптов выходит, что как раз у сиквельного одно право лишнее.
у него и смотрите login_token
...
Рейтинг: 0 / 0
Подскажите по пермиссиям серверной роли dbcreator.
    #39862403
hegth
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Yasha123hegthпропущено...


Нет, дело не в членствах и явных запретах. Просто так работае sql server(проверено эксперементами). А почему он так работает инфы найти не могу.
вы продолжаете нести фигню.
вот мой код создает виндовый логин,
его засовывает в dbcreator,
затем проверяем права.
все с ними в порядке:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
create login [Dev4\Mary] from windows
alter server role dbcreator add member [Dev4\Mary];
exec as login = 'Dev4\Mary'

select system_user, *
from sys.fn_my_permissions(null, 'server')

revert;

И вас не смущает, что у вас в результате нет пермиссии "Alter any database"?
...
Рейтинг: 0 / 0
Подскажите по пермиссиям серверной роли dbcreator.
    #39862405
Фотография Yasha123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hegthИ вас не смущает, что у вас в результате нет пермиссии "Alter any database"?

нет, не смущает.
это как раз то, что у вас лишнее.
выясняйте, откуда оно.
или выдано скульному логину в явном виде,
или выдано еще одной роли, куда он входит
...
Рейтинг: 0 / 0
Подскажите по пермиссиям серверной роли dbcreator.
    #39862411
hegth
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Yasha123hegthИ вас не смущает, что у вас в результате нет пермиссии "Alter any database"?

нет, не смущает.
это как раз то, что у вас лишнее.
выясняйте, откуда оно.
или выдано скульному логину в явном виде,
или выдано еще одной роли, куда он входит

Спс, буду разбираться, судя по сайту майкрософт оно быть должно.
...
Рейтинг: 0 / 0
Подскажите по пермиссиям серверной роли dbcreator.
    #39862839
Фотография Yasha123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hegthбуду разбираться, судя по сайту майкрософт оно быть должно.
а оно есть.
только оно какое-то "скрытое".
я хочу сказать, что хотя sys.fn_my_permissions(null, 'server')
не показывает в явном виде alter any database,
право такое у членов роли dbcreator есть.
т.е. члены этой роли спокойно выполняют alter database на любой базе.

есть предположение, что в явном виде право alter any database
появилось, начиная с 2012-ого.
и теперь его можно выдать независимо от роли.
проверить не могу, у меня сейчас нет под рукой младших версий.
но если это так, то это право "привносилось" логину членством в роли,
но т.к. его не было "в явном виде", то fn_my_permissions и не показывает его
...
Рейтинг: 0 / 0
Подскажите по пермиссиям серверной роли dbcreator.
    #39862954
Фотография Yasha123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и кстати, вот так можно увидеть,
что ALTER ANY DATABASE и без того есть у DBCREATOR-а:
Код: sql
1.
exec sp_srvrolepermission 'dbcreator';
...
Рейтинг: 0 / 0
17 сообщений из 17, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Подскажите по пермиссиям серверной роли dbcreator.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]