CREATE LOGIN (Transact-SQL)

Mis à jour : 17 juillet 2006

Crée une connexion SQL Server.

Icône Lien de rubriqueConventions de la syntaxe de Transact-SQL

Syntaxe

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

Arguments

  • login_name
    Spécifie le nom de la connexion à créer. Il existe trois types de connexions : connexions SQL Server, connexions Windows, connexions mappées sur un certificat et connexions mappées sur une clé asymétrique. Si login_name est mappé sur un compte de domaine Windows, login_name doit être placé entre crochets ([ ]). Voir l'exemple D plus loin dans cette rubrique.
  • WINDOWS
    Spécifie que la connexion doit être mappée sur une connexion Windows.
  • CERTIFICATE certificateName
    Spécifie le nom d'un certificat à associer à cette connexion. Ce certificat doit déjà exister dans la base de données master.
  • ASYMMETRIC KEY asym_key_name
    Spécifie le nom d'une clé asymétrique à associer à cette connexion. Cette clé doit déjà exister dans la base de données master.
  • PASSWORD ='password'
    S'applique uniquement aux connexions SQL Server. Spécifie le mot de passe de la connexion à créer. Cette valeur peut déjà être hachée. Il est recommandé d'utiliser un mot de passe fort. Pour plus d'informations, consultez Mots de passe forts.
  • PASSWORD **=**hashed_password
    S'applique uniquement au mot clé HASHED. Spécifie la valeur hachée du mot de passe pour la connexion créée.
  • HASHED
    S'applique uniquement aux connexions SQL Server. Spécifie que le mot de passe entré après l'argument PASSWORD est déjà haché. L'option HASHED ne peut être utilisée que sur des connexions pour lesquelles les contrôles de stratégie de mot de passe sont désactivés. Si cette option n'est pas sélectionnée, la chaîne de caractères entrée comme mot de passe est hachée avant d'être stockée dans la base de données.
  • MUST_CHANGE
    S'applique uniquement aux connexions SQL Server. Si vous incluez cette option, SQL Server demande à l'utilisateur un nouveau mot de passe lors de la première utilisation de la nouvelle connexion.
  • CREDENTIAL **=**credential_name
    Nom des informations d'identification à associer à la nouvelle connexion SQL Server. Les informations d'identification doivent déjà exister dans le serveur.
  • SID = sid
    S'applique uniquement aux connexions SQL Server. Spécifie le GUID de la nouvelle connexion SQL Server. Si cette option n'est pas sélectionnée, SQL Server attribue automatiquement un GUID.
  • DEFAULT_DATABASE **=**database
    Spécifie la base de données par défaut à affecter à la connexion. Si cette option est omise, la base de données par défaut est master.
  • DEFAULT_LANGUAGE **=**language
    Spécifie la langue par défaut à affecter à la connexion. Si cette option est omise, la langue par défaut est la langue par défaut actuellement définie pour le serveur. Si la langue par défaut du serveur est changée par la suite, la langue par défaut de la connexion reste la même.
  • CHECK_EXPIRATION = { ON | OFF }
    S'applique uniquement aux connexions SQL Server. Spécifie si les règles d'expiration des mots de passe doivent être imposées sur cette connexion. La valeur par défaut est OFF.
  • CHECK_POLICY = { ON | OFF }
    S'applique uniquement aux connexions SQL Server. Spécifie que les règles des mots de passe Windows de l'ordinateur sur lequel SQL Server s'exécute doivent être imposées sur cette connexion. La valeur par défaut est ON.

Notes

Les mots de passe respectent la casse.

Le hachage préalable des mots de passe est pris en charge uniquement lorsque vous créez des connexions SQL Server.

Si MUST_CHANGE est spécifié, CHECK_EXPIRATION et CHECK_POLICY doivent prendre la valeur ON. Sans quoi, l'instruction échoue.

La combinaison CHECK_POLICY = OFF et CHECK_EXPIRATION = ON n'est pas prise en charge.

Lorsque CHECK_POLICY prend la valeur OFF, lockout_time est réinitialisé et CHECK_EXPIRATION prend la valeur OFF.

ms189751.note(fr-fr,SQL.90).gifImportant :
CHECK_EXPIRATION et CHECK_POLICY sont imposés uniquement sur et les versions ultérieures. Pour plus d'informations, consultez Stratégie de mot de passe.

Les connexions créées à partir de certificats ou de clés asymétriques ne sont utilisées que pour la signature de code. Elles ne peuvent pas être utilisées pour se connecter à SQL Server. Vous pouvez créer une connexion à partir d'un certificat ou d'une clé asymétrique uniquement lorsque ceux-ci existent déjà dans la base de données master.

Autorisations

Nécessite l'autorisation ALTER ANY LOGIN sur le serveur. Si l'option CREDENTIAL est utilisée, exige également l'autorisation ALTER ANY CREDENTIAL sur le serveur.

Exemples

A. Création d'une connexion avec un mot de passe

L'exemple suivant crée une connexion pour un utilisateur particulier et assigne un mot de passe. L'option MUST_CHANGE exige que les utilisateurs modifient ce mot de passe lors de la première connexion au serveur.

CREATE LOGIN Mary5 WITH PASSWORD = '<enterStrongPasswordHere>' MUST_CHANGE;
GO

B. Création d'une connexion mappée sur une information d'identification

L'exemple suivant crée une connexion pour un utilisateur particulier. Cette connexion est mappée aux informations d'identification.

CREATE LOGIN Mary5 WITH PASSWORD = '<enterStrongPasswordHere>', 
    CREDENTIAL = <credential_name>;
GO

C. Création d'une connexion à partir d'un certificat

L'exemple suivant crée une connexion pour un utilisateur particulier à partir d'un certificat dans la base de données master.

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

D. Création d'une connexion à partir d'un compte de domaine Windows

L'exemple suivant crée la connexion [Adventure-Works\Mary5] à partir d'un compte de domaine Windows.

CREATE LOGIN [Adventure-Works\Mary5] FROM WINDOWS;
GO

Voir aussi

Référence

ALTER LOGIN (Transact-SQL)
DROP LOGIN (Transact-SQL)
EVENTDATA (Transact-SQL)

Autres ressources

Entités de sécurité
Stratégie de mot de passe

Aide et Informations

Assistance sur SQL Server 2005

Historique des modifications

Version Historique

17 juillet 2006

Contenu modifié :
  • Clarification de l'utilisation des connexions créées à partir d'un certificat ou d'une clé asymétrique.