Программирование >>  Администрирование microsoft sql 

1 ... 110 111 112 [ 113 ] 114 115 116 ... 203


Роли приложений

Роль приложения используется для ограничения доступа пользователей к данным SQL Server 2000 при работе с конкретным приложением (например Microsoft Excel или

бухгалтерскими программами). Ограничение доступа пользователей к приложению

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

Роль приложения - это роль БД, которой назначен тствуюшие разрешения. У роли приложения нет пользователей, и по умолчанию она неактивна. Вы не можете добавлять группы Windows NT 4.0/2000, пользователей или роли к этим ролям. Чтобы активировать роль приложения, приложение должна шить базе данных пароль. Пароль может содержаться в коде приложения, либо он может находиться в виде зашифрованного ключа в системном реестре или в БД SQL Server 2000.

Разрешения пользовательского доступа SQL Server 2000 посредством роли приложения ограничиваются предоставляемыми для этой роли разрешениями. Существующие разрешения доступа пользователя к SQL Server 2000 (или их отсутствие) игнорируются, если доступ к SQL Server 200 вляется через роль приложения. К тому же роль приложения специфична по отношению к каждой БД. Это означает, что доступ к данным за пределами БД, в которой создана эта роль приложения, ограничен разрешениями доступа, назначенными пользователю guest.

Создание ролей приложения

Процесс создания роли приложения с использованием SQL Server Enterprise Manager по существу не отличается от процесса создания роли БД. В базе

данных, где нужно создать роль приложения, правой кнопкой щелкните Roles и выберите New Database Role. В диалоговом окне Database RoLe Properties - New Role введите имя новой роли в поле Name, щелкните Application Role и укажите пароль в поле Password (рис. 11-7).

После создания роли приложения назначьте ей оответствуюшие разрешения, также, как предоставляли разрешения доступа для пользовательской роли БД, - щелкнув кнопку Permissions (рис. 11-8).

Вы также можете создавать роль приложения, используя хранимую процедуру Transact-SQL sp addapprole.

Занятие 2. Использование ролей приложения

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

БД со специфическими разрешениями, посредством которхх пользователи получают доступ к данным SQL Server 2000. На этом занятии вы научитесь создавать роли приложений, используя утилиту SQL Server Enterprise Manager и операторы Tiansact-SQL. Также вы узнаете о применении средств защиты при использовании ролей приложения.

Изучив материал этог тия, вы сможете:

V создавать роли приложения;

активировать и использовать роли приложений.

Продолжительность занятия - около 30 минут



Занятие 2

Использование роле н я 335


Рис. 11-7. Создание роли приложения

..i, .ikii:-


Рис. 11-8. Задание разрешений доступа для новой роли

В следующем примере в текущей БД создается роль AccountingAppRole с паролем AppPassword. При этом разрешения доступа для роли приложения будут пре.юст шле-ны с помощью операторов Transact-SQL GRANT, REVOKE и DENY, применяющихся для управления разрешениями доступа пользователя, группы и пользовательской роли БД.

sp addapprole AccountingAppRole , AppPassword

Активация и использование ролей приложения

Чтобы активировать роль приложения, используйте хранимую процедуру sp sctapp-role. Однажды активировав роль приложения, пользователь (работая с активировавшим ее приложением) может выполнять все действия, допустимые для данной роли.



► Чтобы создать роли приложения и проверить твующие разрешения

1. Переключитесь в SQL Server Enterprise Manager.

2. В дереве консоли раскройте контейнер Databases экземпляра SQL Server по умолчанию, и затем - контейнер БД SSEMDB.

3. Правой кнопкой щелкните Roles и выберите New Database Role.

Откроется окно Database Role Properties - New Role.

4. В поле Name введите NewAppRole.

5. Щелкните Application Role.

6. В поле Password введите pass и щелкните ОК.

7. В правой панели дважды щелкните NewAppRole.

Откроется окно Database Кл<1... Properties - NewAppRole. /

8. Щелкните Permissions. - .

Откроется окно Database Role Properties - SSEMDB.

9. Для объекта БД Customer Procedure пометьте флажок Exec для предоставления разрешений выполнения оператора EXECUTE для данной хранимой процедуры.

10. Для объекта БД Customer View 1 пометьте флажок Select для предоставления разрешений выполнения оператора SELECT для данного представления и щелкните ОК.

11. В окне Database Role Properties - NewAppRole щелкните ОК.

12. В окне SQL Query Analyzer переключитесь на сеанс пользователя Ana.

13. В окне запросов выполните два запроса, чтобы убедиться, что пользователь Ana не может выполнять ни хранимую процедуру ни выборку данных из

14. Не завершайте сеанс пользователя Ana.

15. В меню File выберите Connect. ;

Откроется окно Connect To SQL Server.

16. Щелкните SQL Server Authentication.

17. В текстовом поле Login Name введите Ana.

18. В поле Password введите password и щелкните ОК.

Обратите внимание, что вы подключились к БД master под именем Ana.

19. В панели инструментов в списке БД выберите в качестве текущей БД SSEMDB.

20. В панели запросов введите EXEC , и в панели инструментов щелкните Execute Query.

Обратите внимание, что роль NewAppRole б1ла активирована. В панели инструментов щелкните Clear Window. 22. В панели запросов введите EXEC и в панели инструментов

щелкните Execute Query.

В следующем примере активируется роль AccountingAppRole с использованием пароля Applasswoia. Здесь применяется метод шифрования ODBC перед отправкой

пароля SQL Server 2000.

EXE ccountingAppRole crypt N AppPasswordodbc

Упражнение 4. Создание ролей приложения и проверка соответствующих разрешений

В этом упражнении вы создадите роли приложения и проверите наличие соответствующих разрешений.



1 ... 110 111 112 [ 113 ] 114 115 116 ... 203

© 2006 - 2025 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика