CREATE LOGIN (Transact-SQL)
Изменения: 17 июля 2006 г.
Создает новое имя входа SQL Server.
Синтаксические обозначения в Transact-SQL
Синтаксис
CREATE LOGIN login_name { WITH <option_list1> | FROM <sources> }
<sources> ::=
WINDOWS [ WITH <windows_options> [ ,... ] ]
| CERTIFICATE certificateName
| ASYMMETRIC KEY asym_key_name
<option_list1> ::=
PASSWORD = { 'password' | hashed_password HASHED } [ MUST_CHANGE ]
[ , <option_list2> [ ,... ] ]
<option_list2> ::=
SID = sid
| DEFAULT_DATABASE = database
| DEFAULT_LANGUAGE = language
| CHECK_EXPIRATION = { ON | OFF}
| CHECK_POLICY = { ON | OFF}
| CREDENTIAL = credential_name
<windows_options> ::=
DEFAULT_DATABASE = database
| DEFAULT_LANGUAGE = language
Аргументы
- login_name
Указывает имя пользователя для создаваемого имени входа. Существует четыре типа имен входа: имена входа SQL Server, имена входа Windows, имена входа, сопоставленные с помощью сертификата, а также имена входа, сопоставленные с помощью асимметричного ключа. Если аргумент login_name сопоставлен с учетной записью домена Windows, то аргумент login_name следует заключить в квадратные скобки ([ ]). См. пример Г далее в этом разделе.
- WINDOWS
Имя входа сопоставлено с именем входа Windows.
- CERTIFICATE certificateName
Имя сертификата, связываемого с данным именем входа. Этот сертификат должен существовать в базе данных master.
- ASYMMETRIC KEY asym_key_name
Имя асимметричного ключа, связываемого с данным именем входа. Этот ключ должен существовать в базе данных master.
- PASSWORD ='password'
Применяется только к именам входа SQL Server. Задает пароль для создаваемого имени входа. Значение может быть уже хэшированным. Следует использовать надежные пароли. Дополнительные сведения см. в разделе Надежные пароли.
- PASSWORD **=**hashed_password
Применимо только к ключевому слову HASHED. Указывает хэшированное значение пароля для создаваемого имени входа.
- HASHED
Применяется только к именам входа SQL Server. Указывает, что пароль, введенный после аргумента PASSWORD, уже хэширован. Ключевое слово HASHED может использоваться только с именами входа, для которых отключены проверки политики пароля. Если этот параметр не выбран, то строка, введенная в качестве пароля, хэшируется перед сохранением в базе данных.
- MUST_CHANGE
Применяется только к именам входа SQL Server. Если этот параметр задан, то при первом использовании нового имени входа SQL Server запрашивается новый пароль.
- CREDENTIAL **=**credential_name
Имя учетных данных для сопоставления с новым именем входа SQL Server. Учетные данные должны уже существовать на сервере.
- SID = sid
Применяется только к именам входа SQL Server. Задает идентификатор GUID нового имени входа SQL Server. Если этот параметр не выбран, то SQL Server назначает идентификатор GUID автоматически.
- DEFAULT_DATABASE **=**database
База данных по умолчанию, связываемая с именем входа. Если этот параметр не задан, то базой данных по умолчанию становится master.
- DEFAULT_LANGUAGE **=**language
Язык по умолчанию, назначаемый имени входа. Если этот параметр не задан, то в качестве языка по умолчанию выбирается текущий язык по умолчанию для сервера. При смене языка по умолчанию для сервера язык по умолчанию имени входа не меняется.
- CHECK_EXPIRATION = { ON | OFF }
Применяется только к именам входа SQL Server. Показывает, применяется ли к данному имени входа политика истечения срока действия паролей. Значение по умолчанию — OFF.
- CHECK_POLICY = { ON | OFF }
Применяется только к именам входа SQL Server. Указывает, что к данному имени входа следует принудительно применять политики паролей Windows компьютера, на котором выполняется SQL Server. Значение по умолчанию — ON.
Замечания
При вводе пароля учитывается регистр символов.
Предварительное хэширование паролей поддерживается только при создании имен входа SQL Server.
Если задан параметр MUST_CHANGE, то параметры CHECK_EXPIRATION и CHECK_POLICY должны иметь значение ON. В противном случае выполнение инструкции приведет к ошибке.
Сочетание CHECK_POLICY = OFF и CHECK_EXPIRATION = ON не поддерживается.
Если значение CHECK_POLICY равно OFF, то lockout_time сбрасывается и параметру CHECK_EXPIRATION также присваивается значение OFF.
Важно! |
---|
Параметры CHECK_EXPIRATION и CHECK_POLICY будут принудительно применяться только в и более поздних версий. Дополнительные сведения см. в разделе Политика паролей. |
Имена входа, созданные из сертификатов или асимметричных ключей, используются только для подписи кода. Они не могут использоваться для подключения к SQL Server. Имя входа можно создать на основе сертификата или ассиметричного ключа только в том случае, если сертификат или асимметричный ключ уже существуют в базе данных master.
Разрешения
Требуется наличие разрешения ALTER ANY LOGIN на сервере. Если используется параметр CREDENTIAL, также необходимо разрешение ALTER ANY CREDENTIAL на сервере.
Примеры
А. Создание имени входа с паролем
В следующем примере создается имя входа для конкретного пользователя и назначается пароль. Параметр MUST_CHANGE
требует, чтобы пользователи изменили этот пароль при первом подключении к серверу.
CREATE LOGIN Mary5 WITH PASSWORD = '<enterStrongPasswordHere>' MUST_CHANGE;
GO
Б. Создание имени входа, сопоставленного с учетными данными
В следующем примере создается имя входа для конкретного пользователя. Это имя входа сопоставлено с учетными данными.
CREATE LOGIN Mary5 WITH PASSWORD = '<enterStrongPasswordHere>',
CREDENTIAL = <credential_name>;
GO
В. Создание имени входа на основе сертификата
В следующем примере создается имя входа для конкретного пользователя из сертификата в главной базе данных.
USE MASTER;
CREATE CERTIFICATE <certificateName>
WITH SUBJECT = '<login_name> certificate in master database',
EXPIRY_DATE = '02/02/2009';
GO
CREATE LOGIN <login_name> FROM CERTIFICATE <certificateName>;
GO
Г. Создание имени входа на основе учетной записи домена Windows
В следующем примере имя входа [Adventure-Works\Mary5]
создается на основе учетной записи домена Windows.
CREATE LOGIN [Adventure-Works\Mary5] FROM WINDOWS;
GO
См. также
Справочник
ALTER LOGIN (Transact-SQL)
DROP LOGIN (Transact-SQL)
EVENTDATA (Transact-SQL)
Другие ресурсы
Справка и поддержка
Получение помощи по SQL Server 2005
Журнал изменений
Версия | Журнал |
---|---|
17 июля 2006 г. |
|