Partager via


Créer un utilisateur de base de données

S’applique à :SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)Base de données SQL dans Microsoft Fabric

Cet article explique comment créer les types les plus courants d’utilisateurs de base de données. Il existe 13 types d’utilisateurs. La liste complète est fournie dans l’article CREATE USER. Tous les types de SQL Server prennent en charge les utilisateurs de base de données, mais pas nécessairement tous les types d’utilisateurs.

Vous pouvez créer un utilisateur de base de données à l’aide de SQL Server Management Studio ou de Transact-SQL.

Présentation des types d’utilisateurs

Management Studio présente six options pour la création d’un utilisateur de base de données. Le schéma suivant montre les six options dans la zone verte et indique ce qu’elles représentent.

Diagramme décrivant les différents types d’utilisateurs

Sélectionner le type d’utilisateur

Si vous ne connaissez pas encore SQL Server, il peut s’avérer difficile de déterminer quel type d’utilisateur vous souhaitez créer. Tout d'abord, posez-vous la question suivante : la personne ou le groupe qui doit accéder à la base de données dispose-t-elle d’une connexion ?

Créez un utilisateur avec connexion

Dans la base de données master, les connexions sont courantes pour les personnes qui gèrent le serveur SQL Server et celles qui doivent accéder à plusieurs ou l’ensemble des bases de données sur l’instance de SQL Server. Pour ce cas, créez un utilisateur SQL avec connexion. L’utilisateur de base de données est l’identité du compte de connexion lorsqu’il se connecte à la base de données. Il peut utiliser le même nom que celui du compte de connexion, mais cela n’est pas obligatoire. Cet article part du principe qu’il existe déjà un compte de connexion dans SQL Server. Pour plus d’informations sur la création d’une connexion, consultez Créer une connexion.

Créez un utilisateur sans connexion

Si la personne ou le groupe qui doit accéder à la base de données ne dispose pas d’une connexion et n’a besoin d’accéder qu’à une ou un petit nombre de bases de données, créez un utilisateur Windows ou un utilisateur SQL avec mot de passe. On l’appelle également utilisateur de base de données autonome. Un utilisateur de base de données autonome n’est pas associé à une connexion dans la base de données master. Cela constitue un excellent choix lorsque vous souhaitez pouvoir déplacer facilement votre base de données entre des instances de SQL Server. Pour utiliser cette option sur SQL Server, un administrateur doit d’abord activer les bases de données autonomes pour le serveur SQL Server et activer l’autonomie pour la base de données. Pour plus d’informations, voir Rendre votre base de données portable en utilisation des bases de données autonomes.

Important

Lorsque vous vous connectez en tant qu’utilisateur de base de données autonome, vous devez fournir le nom de la base de données dans la chaîne de connexion. Pour spécifier la base de données dans SQL Server Management Studio (SSMS), dans la boîte de dialogue Se connecter à, sélectionnez Options, puis l’onglet Propriétés de connexion.

Sélectionnez utilisateur SQL avec mot de passe ou utilisateur SQL avec connexion avec connexion d’authentification SQL Server, lorsque la personne qui se connecte ne peut pas s’authentifier avec l’authentification Windows. Cela arrive fréquemment lorsque des personnes extérieures à votre organisation (par exemple des clients) se connectent à votre serveur SQL Server.

Tip

Pour les personnes internes à votre organisation, l'authentification Windows est un meilleur choix, parce qu’elles n'auront pas à mémoriser un mot de passe supplémentaire et que l'authentification Windows offre des fonctionnalités de sécurité supplémentaires, notamment Kerberos.

Background

Un utilisateur est un principal de sécurité au niveau de la base de données. Les comptes de connexion doivent être mappés à un utilisateur de base de données pour permettre la connexion à une base de données. Un compte de connexion peut être mappé à différentes bases de données en tant qu'utilisateurs différents, mais il ne peut être mappé que comme utilisateur unique dans chaque base de données. Dans une base de données partiellement autonome, on peut créer un utilisateur qui ne dispose pas de compte de connexion. Pour plus d’informations sur les utilisateurs de base de données autonome, consultez CREATE USER. Lorsque l’utilisateur invité d’une base de données est activé, un compte de connexion non mappé à un utilisateur de base de données peut accéder à la base de données en tant qu’utilisateur invité.

À compter de SQL Server 2012 (11.x), SQL Server et Azure SQL DB utilisaient un hachage SHA-512 combiné à un salage unique et aléatoire de 32 bits. Cette méthode rendait statistiquement impossible la déduction des mots de passe par les attaquants.

SQL Server 2025 (17.x) introduit un algorithme de hachage itéré, RFC2898, également appelé fonction de dérivation de clé basée sur mot de passe (PBKDF). Cet algorithme utilise toujours SHA-512, mais hache le mot de passe plusieurs fois (100 000 itérations), ralentissant considérablement les attaques par force brute. Cette modification améliore la protection par mot de passe en réponse aux menaces de sécurité en constante évolution et aide les clients à se conformer aux directives NIST SP 800-63b. Cette amélioration de la sécurité utilise un algorithme de hachage plus fort, qui peut légèrement augmenter le temps de connexion pour les connexions d’authentification SQL. L’impact est généralement inférieur dans les environnements avec le regroupement de connexions, mais peut être plus visible dans les scénarios sans regroupement ni où la latence de connexion est étroitement surveillée.

Important

L'utilisateur invité est habituellement désactivé. Activez-le unique lorsque cela s’avère nécessaire.

En tant que principal de sécurité, il est possible d'accorder des autorisations à des utilisateurs. L'étendue d'un utilisateur est la base de données. Pour se connecter à une base de données spécifique sur l’instance de SQL Server, un compte de connexion doit être mappé à un utilisateur de base de données. Les autorisations dans la base de données sont accordées et refusées à l'utilisateur de la base de données, pas au compte de connexion.

Permissions

Requiert l'autorisation ALTER ANY USER sur la base de données.

Créer un utilisateur avec SSMS

  1. Dans l'Explorateur d'objets, développez le dossier Bases de données .

  2. Développez la base de données où créer le nouvel utilisateur de base de données.

  3. Cliquez avec le bouton droit sur le dossier Sécurité, pointez sur Nouveau, puis sélectionnez Utilisateur....

  4. Dans la boîte de dialogue Nouvel utilisateur de base de données, dans la page Général, sélectionnez un des types d’utilisateurs suivants à partir de la liste Type d’utilisateur :

    • Utilisateur SQL avec connexion
    • Utilisateur SQL avec mot de passe (lorsque la base de données autonome est activée)
    • Utilisateur SQL sans connexion
    • Utilisateur mappé à un certificat
    • Utilisateur mappé à une clé asymétrique
    • Utilisateur Windows

    Dans la base de données SQL Fabric, WITH PASSWORD n’est pas pris en charge, car Microsoft Entra ID pour les utilisateurs de base de données est la seule méthode d’authentification acceptée.

  5. Lorsque vous sélectionnez une option, les options restantes dans la boîte de dialogue peuvent changer. Certaines options s'appliquent uniquement à des types spécifiques d'utilisateurs de base de données. Certaines options peuvent être vides et utiliser la valeur par défaut.

    • Nom d’utilisateur

      Entrez le nom du nouvel utilisateur. Si vous avez choisi Utilisateur Windows dans la liste Type d’utilisateur, vous pouvez également cliquer sur les points de suspension (...) pour ouvrir la boîte de dialogue Sélectionner un utilisateur ou un groupe.

    • Nom de connexion

      Entrez le nom de connexion de l'utilisateur. Vous pouvez également cliquer sur les points de suspension (…) pour ouvrir la boîte de dialogue Sélectionner la connexion . Nom de connexion est disponible si vous sélectionnez Utilisateur SQL avec connexion ou Utilisateur Windows dans la liste Type d’utilisateur.

    • Mot de passe et Confirmer le mot de passe

      Entrez un mot de passe pour les utilisateurs qui s’authentifient auprès de la base de données.

    • Langue par défaut

      Entrez la langue par défaut de l’utilisateur.

    • Schéma par défaut

      Entrez le schéma qui possédera les objets créés par cet utilisateur. Vous pouvez également cliquer sur les points de suspension (…) pour ouvrir la boîte de dialogue Sélectionner le schéma. Schéma par défaut est disponible si vous sélectionnez Utilisateur SQL avec connexion, Utilisateur SQL sans connexion ou Utilisateur Windows dans la liste Type d’utilisateur .

    • Nom du certificat

      Entrez le certificat à utiliser pour l'utilisateur de base de données. Vous pouvez également cliquer sur les points de suspension (…) pour ouvrir la boîte de dialogue Sélectionner le certificat. Nom du certificat est disponible si vous sélectionnez Utilisateur mappé à un certificat dans la liste Type d’utilisateur .

    • Nom de la clé asymétrique

      Entrez la clé à utiliser pour l'utilisateur de base de données. Vous pouvez également cliquer sur les points de suspension (…) pour ouvrir la boîte de dialogue Sélectionner la clé asymétrique. Nom de la clé asymétrique est disponible si vous sélectionnez Utilisateur mappé à une clé asymétrique dans la liste Type d’utilisateur .

  6. Cliquez sur OK.

Options supplémentaires

La boîte de dialogue Nouvel utilisateur de base de données offre également des options dans quatre autres supplémentaires : Schémas appartenant à un rôle, Appartenance, Éléments sécurisables et Propriétés étendues.

  • La page Schémas appartenant à un rôle répertorie tous les schémas possibles qui peuvent être détenus par le nouvel utilisateur de base de données. Pour ajouter des schémas à un utilisateur de base de données ou lui en supprimer, sous Schémas appartenant à cet utilisateur, activez ou désactivez les cases à cocher en regard de ces schémas.

  • La page Appartenance répertorie tous les rôles possibles d'appartenance de base de données qui peuvent être détenus par le nouvel utilisateur de base de données. Pour ajouter des rôles à un utilisateur de base de données ou lui en supprimer, sous Appartenance au rôle de base de données, activez ou désactivez les cases à cocher en regard de ces rôles.

  • La page Éléments sécurisables répertorie tous les éléments sécurisables possibles et les autorisations sur ces éléments sécurisables qui peuvent être accordées à la connexion.

  • La page Propriétés étendues vous permet d'ajouter des propriétés personnalisées aux utilisateurs de base de données. Les options suivantes sont disponibles sur cette page.

    • Database

      Affiche le nom de la base de données sélectionnée. Ce champ est en lecture seule.

    • Collation

      Affiche le classement utilisé pour la base de données sélectionnée. Ce champ est en lecture seule.

    • Properties

      Affiche ou spécifie les propriétés étendues de l'objet. Chaque propriété étendue est constituée d'une paire nom/valeur de métadonnées associées à l'objet.

    • Points de suspension (...)

      Cliquez sur les points de suspension (…) figurant après Valeur pour ouvrir la boîte de dialogue Valeur de la propriété étendue. Tapez ou affichez la valeur de la propriété étendue dans cet emplacement de plus grande taille. Pour plus d'informations, consultez Boîte de dialogue Valeur de la propriété étendue.

    • Delete

      Supprime la propriété étendue sélectionnée.

Créer un utilisateur à l’aide de T-SQL

  1. Dans l' Explorateur d'objets, connectez-vous à une instance du Moteur de base de données.

  2. Dans la barre d’outils Standard, sélectionnez Nouvelle requête.

  3. Copiez et collez l’exemple suivant dans la fenêtre de requête, puis sélectionnez Exécuter.

    -- Creates the login AbolrousHazem with password '340$Uuxwp7Mcxo7Khy'.
    CREATE LOGIN AbolrousHazem
    WITH PASSWORD = '340$Uuxwp7Mcxo7Khy';
    GO
    
    -- Creates a database user for the login created previously.
    CREATE USER AbolrousHazem
    FOR LOGIN AbolrousHazem;
    GO
    

Pour plus d’informations, consultez CREATE USER, qui contient beaucoup d’autres exemples Transact-SQL.