Поделиться через


CREATE APPLICATION ROLE (Transact-SQL)

Область применения: SQL Server База данных SQL Azure Управляемый экземпляр SQL Azure

Добавляет роль приложения к текущей базе данных.

Соглашения о синтаксисе Transact-SQL

Синтаксис

CREATE APPLICATION ROLE application_role_name
    WITH PASSWORD = 'password' [ , DEFAULT_SCHEMA = schema_name ]

Аргументы

application_role_name

Указывает имя роли приложения. Это имя не должно быть уже занято для обращения к любому из участников базы данных.

PASSWORD = password

Указывает пароль для включения роли приложения пользователями базы данных. Всегда используйте надежные пароли. password должен соответствовать требованиям политики паролей Windows компьютера, на котором выполняется экземпляр SQL Server.

DEFAULT_SCHEMA = schema_name

Указывает первую схему, в которой сервер будет производить поиск при распознавании имен объектов для этой роли. Если DEFAULT_SCHEMA осталось неопределенным, роль приложения будет использоваться dbo в качестве схемы по умолчанию. schema_name может быть схемой, которая не существует в базе данных.

Замечания

Внимание

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

Роли приложения можно просмотреть в представлении каталога sys.database_principals.

Сведения об использовании ролей приложения см. в разделе Роли приложений.

Замечание

Схемы не эквивалентны пользователям базы данных. Используйте представления системного каталога для выявления различий между пользователями базы данных и схемами.

Начиная с 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.

Разрешения

Необходимо наличие разрешения ALTER ANY APPLICATION ROLE для этой базы данных.

Примеры

В следующем примере создается роль приложения с именем weekly_receipts, паролем 987Gbv876sPYY5m23 и схемой по умолчанию Sales.

CREATE APPLICATION ROLE weekly_receipts
    WITH PASSWORD = '987G^bv876sPY)Y5m23'
    , DEFAULT_SCHEMA = Sales;
GO