|
Программирование >> Администрирование microsoft sql
Роли приложений Роль приложения используется для ограничения доступа пользователей к данным 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. Создание ролей приложения и проверка соответствующих разрешений В этом упражнении вы создадите роли приложения и проверите наличие соответствующих разрешений.
|
© 2006 - 2025 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки. |