Exercice – Configurer l’authentification

Effectué

Dans cet exercice, vous allez créer des connexions, des utilisateurs et des administrateurs, puis accorder aux utilisateurs Microsoft Entra l’accès à la base de données, comme vous le feriez pour des utilisateurs normaux dans SQL Server.

  1. Ouvrez SQL Server Management Studio (SSMS), puis connectez-vous à votre serveur logique Azure SQL Database, si vous n’êtes pas déjà connecté.

  2. Une fois que vous avez configuré votre base de données et que vous y êtes connecté, l’étape suivante peut être d’ajouter des utilisateurs et de leur accorder l’accès. Comme dans SQL Server, vous pouvez ajouter des informations de connexion et des utilisateurs.

    Dans SSMS, cliquez avec le bouton droit sur votre serveur de base de données, sélectionnez Nouvelle requête, puis créez une requête avec la commande suivante. Sélectionnez Exécuter pour exécuter la requête :

    -- Create a new SQL login and give them a password
    CREATE LOGIN ApplicationUser WITH PASSWORD = 'YourStrongPassword1';
    

    Conseil

    Pour la plupart des requêtes dans Azure SQL Database, vous devez cliquer avec le bouton droit sur la base de données dans le serveur logique Azure SQL Database. Dans SQL Server et Azure SQL Managed Instance, vous pouvez effectuer une requête au niveau du serveur et utiliser USE <DatabaseName>. En revanche, dans Azure SQL Database, vous devez interroger la base de données directement. car l’instruction USE n’est pas prise en charge. Il existe quelques exceptions à l’interrogation de votre base de données dans Azure SQL Database. L’une d’elles concerne les informations de connexion. Vous devez vous connecter à la base de données master virtuelle pour créer et modifier les informations de connexion.

    Vous disposez maintenant d’informations de connexion au niveau du serveur. L’étape suivante consiste à créer des utilisateurs dans la base de données AdventureWorks et à leur donner un accès en lecture/écriture, si nécessaire. Faites un clic droit sur la AdventureWorksbase de données et sélectionnez Nouvelle requête. Créez une requête avec la commande suivante, puis sélectionnez Exécuter :

    -- Create a new SQL user from that login
    CREATE USER ApplicationUser FOR LOGIN ApplicationUser;
    
    -- Until you run the following two lines, ApplicationUser has no access to read or write data
    ALTER ROLE db_datareader ADD MEMBER ApplicationUser;
    ALTER ROLE db_datawriter ADD MEMBER ApplicationUser;
    

    Les utilisateurs pourront se connecter uniquement à la base de données AdventureWorks, pas au serveur entier.

    Une bonne pratique consiste à créer des comptes non administrateurs au niveau de la base de données, sauf si les utilisateurs doivent être en mesure d’exécuter des tâches d’administrateur.

  3. Dans SQL Server, vous connaissez peut-être le concept d’utilisateur de base de données autonome. Il signifie qu’un utilisateur a accès uniquement à des bases de données spécifiques et qu’il n’a pas de connexion au serveur. Dans votre instance Azure SQL Database, vous pouvez créer des utilisateurs de bases de données autonome avec une authentification SQL ou une authentification Microsoft Entra. Vous devez être dans le contexte de la base de données utilisateur à laquelle vous voulez créer un accès utilisateur (plutôt que dans la base de données master). Dans SSMS, cliquez avec le bouton droit sur votre base de données et sélectionnez Nouvelle requête. Créez une requête avec la commande suivante, puis sélectionnez Exécuter :

    CREATE USER MyDatabaseUser WITH PASSWORD = 'C0mpl3xPa55word!'
    
  4. Sélectionnez Connecter en haut à gauche de l’Explorateur d’objets, puis Moteur de base de données. Configurez la page principale de manière à vous connecter à votre serveur logique Azure SQL Database. Pour Informations de connexion, entrez MyDatabaseUser et pour Mot de passe, entrez C0mpl3xPa55word!.

  5. Vous devez également définir le nom de la base de données en allant dans Options>Paramètres de connexion supplémentaires, où vous pouvez entrer Initial Catalog=AdventureWorks. Vous devez le faire manuellement car MyDatabaseUser n’a pas accès au balayage du serveur pour sélectionner une base de données.

  6. Sélectionnez Se connecter, puis confirmez que vous êtes en mesure d’accéder à la base de données.

  7. En guise d’étape de nettoyage, cliquez avec le bouton droit sur la connexion à partir de MyDatabaseUser, puis sélectionnez Déconnecter.

Accorder l’accès à d’autres utilisateurs Microsoft Entra

Vous pouvez créer des connexions à partir de comptes Microsoft Entra en tant qu’utilisateur de base de données autonome à l’aide de la syntaxe T-SQL CREATE USER [anna@contoso.com] FROM EXTERNAL PROVIDER. Un utilisateur de base de données autonome mappe à une identité dans le répertoire Microsoft Entra associé à la base de données, et n’a pas d’informations de connexion dans la base de données master.

Avec l’introduction de connexions de serveur Microsoft Entra dans Azure SQL Database, vous pouvez créer des connexions à partir de principaux Microsoft Entra dans la base de données master virtuelle d’une SQL Database. Vous pouvez créer des connexions Microsoft Entra à partir des utilisateurs, groupes et principaux de service de Microsoft Entra. Pour plus d’informations, consultez Principaux du serveur Microsoft Entra

En outre, vous pouvez utiliser le Portail Azure uniquement pour créer des administrateurs et les rôles de contrôle d’accès en fonction du rôle Azure ne se propagent pas aux serveurs logiques Azure SQL Database. Vous devez accorder des autorisations de serveur et de base de données supplémentaires avec Transact-SQL (T-SQL).