powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Понимание Application role
2 сообщений из 2, страница 1 из 1
Понимание Application role
    #32021405
dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Microsoft SQL Server: контрольная по безопасности
Алексей Шуленин

последний ответ: ....
"
revoke all from [Cаша]
exec sp_addapprole @rolename=’AppRole1’, @password='abc'
grant execute on spChangeBalance to ‘AppRole1’

Cымитируем работу приложения (исходный код пользователю, естественно, неизвестен и недоступен):

exec sp_setapprole @rolename=’AppRole1’, @password={Encrypt N'abc'}, @Encrypt='ODBC'
exec spChangeBalance …

Процедура вызывается и отрабатывает. Теперь откроем Query Analyzer, Microsoft Query, Access или любую другую программу, позволяющую послать на SQL Server интерактивный запрос, зарегистрируемся на нем под логином Саши и попробуем вызвать spChangeBalance. Вызов не сработает. Это был пример действия прикладной роли. Прикладные роли в SQL Server 7.0 ограничивают возможности пользователей по доступу к данным рамками конкретного приложения. Таким образом, даже если продвинутый пользователь Саша догадается, что изменение остатка по счету производится хранимой процедурой spChangeBalance, он все равно не сможет ей воспользоваться помимо своего сценария.
"

Тогда:
1. Используем Windows Authentication
2. В Windows создаем группу пользователей SQL-сервера
3. Эта группа входит в роль public требуемой базы, причем для этой роли запрещено все, кроме проверки имени под которым оператор будет работать в приложении
4. Клиентская программа устанавливает соединение по WinLogon, проверяет наличие в таблице операторов.
5. Если проверка прошла, то из клиентской программы выполняется sp_setapprole,
для которой запрещено все кроме хранимых процедур.

Хотелось бы, чтобы таблицы были доступны только администратору сервера, а хранимые процедуры только клиентской программе (и администратору, конечно). Все ли я правильно понял?
...
Рейтинг: 0 / 0
Понимание Application role
    #32021423
mishgan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну так на первый взляд должно все получиться. Только следует помнить, что как только актиризируется application role (вызовом sp_setapprole), у пользователя теряются абсолютно все существовавшие привелегии. Остаются только те привелегии, которые были предоставлены application role.
У меня, например, возникли проблемы, что с использованием application role не получается создавать и удалять логины (т.е. выполнять sp_addlogin, sp_droplogin). Хотя до активизиции application role пользователь обладал всеми необходимыми привелегиями.
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Понимание Application role
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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