Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Область применения: SQL Server
База данных SQL Azure Управляемый экземпляр SQL Azure
В этой статье описывается создание роли приложения в SQL Server с помощью SQL Server Management Studio или Transact-SQL. Роли приложения ограничивают доступ пользователя к базе данных за исключением указанных приложений. Роли приложения не имеют пользователей, поэтому список участников ролей не отображается при выборе роли приложения .
Внимание
Сложность пароля проверяется при установке паролей для роли приложения. Приложения, которые используют роли приложения, должны хранить свои пароли. Пароли ролей приложения всегда должны храниться в зашифрованном виде.
Предыстория
Начиная с SQL Server 2012 (11.x), SQL Server и Базы данных SQL Azure использовали хэш SHA-512 в сочетании с 32-разрядной случайной и уникальной солью. Этот метод сделал его статистически неуловимым для злоумышленников, чтобы вывести пароли.
SQL Server 2025 (17.x) представляет итерированный хэш-алгоритм RFC2898, также известный как функция извлечения ключа на основе пароля (PBKDF). Этот алгоритм по-прежнему использует SHA-512, но хэширует пароль несколько раз (100 000 итерации), значительно замедляя атаки подбора. Это изменение повышает защиту паролей в ответ на развитие угроз безопасности и помогает клиентам соответствовать рекомендациям NIST SP 800-63b. Это улучшение безопасности использует более строгий алгоритм хэширования, который может немного увеличить время входа для входа в систему проверки подлинности SQL. Влияние, как правило, ниже в средах с пулом подключений, но может быть более заметным в сценариях без пула или где задержка входа внимательно отслеживается.
Используйте SQL Server Management Studio
В обозревателе объектов разверните базу данных, в которой необходимо создать роль приложения.
Разверните папку Безопасность .
Разверните папку Роли.
Щелкните правой кнопкой мыши папку Роли приложения и выберите пункт Создать роль приложения....
В диалоговом окне Application Role - New (Роль приложения — создание) на странице Общие введите новое имя для новой роли приложения в поле Имя роли.
В поле Схема по умолчанию укажите схему, к которой будут принадлежать объекты, создаваемые этой ролью, введя имена объектов. Кроме того, выберите многоточие (...), чтобы открыть диалоговое окно "Найти схему ".
В поле Пароль введите пароль для новой роли. Повторно введите пароль в поле Подтверждение пароля .
В поле Схемы, принадлежащие данной роливыберите или просмотрите схемы, которые будут принадлежать этой роли. Схема может принадлежать только одной схеме или роли.
Нажмите ОК.
Дополнительные параметры
В диалоговом окне Application Role - New (Новая роль приложения) также есть параметры на двух дополнительных страницах: Защищаемые объекты и Расширенные свойства.
На странице Защищаемые объекты перечислены все возможные защищаемые объекты и разрешения на эти объекты, которые могут быть предоставлены для входа.
Страница Расширенные свойства позволяет добавлять пользовательские свойства пользователям базы данных.
Использование transact-SQL
В обозревателе объектов подключитесь к экземпляру ядра СУБД.
На стандартной панели выберите пункт Создать запрос.
Скопируйте приведенный ниже пример в окно запроса и нажмите кнопку Выполнить. Этот код создает роль приложения с паролем и схемой по умолчанию
weekly_receipts. Замените<password>строгим паролем.-- CREATE APPLICATION ROLE weekly_receipts WITH PASSWORD = '<password>' , DEFAULT_SCHEMA = Sales; GO
Разрешения
Необходимо разрешение ALTER ANY APPLICATION ROLE на базу данных.