Configurer un serveur lié SQL Server avec l'authentification Microsoft Entra

S’applique à : SQL Server 2022 (16.x)

Les serveurs liés peuvent désormais être configurés avec l’authentification Microsoft Entra ID (anciennement Azure Active Directory), qui prend en charge deux mécanismes pour fournir des informations d’identification :

  • Mot de passe
  • Access token (Jeton d’accès)

Cet article suppose qu’il existe deux instances SQL Server (S1 et S2). Les deux instances ont été configurées pour prendre en charge l’authentification Microsoft Entra et approuvent le certificat SSL/TLS l’une de l’autre. Les exemples de cet article sont exécutés sur le serveur S1 pour créer un serveur lié au serveur S2.

Prérequis

Remarque

Le nom de l’objet du certificat SSL/TLS utilisé par S2 doit correspondre au nom du serveur fourni dans l’attribut provstr. Il doit s’agir du nom de domaine complet (FQDN) ou du nom d’hôte de S2.

Configurations de serveur lié pour l’authentification Microsoft Entra

Nous configurons des serveurs liés en utilisant l’authentification par mot de passe, et en utilisant un secret d’application Azure ou un jeton d’accès.

Configuration du serveur lié avec l’authentification par mot de passe

Remarque

Bien que Microsoft Entra ID soit le nouveau nom d’Azure Active Directory (Azure AD) pour empêcher l’interruption des environnements existants, Azure AD reste toujours dans certains éléments codés en dur, tels que les champs d’interface utilisateur, les fournisseurs de connexions, les codes d’erreur et cmdlets. Dans cet article, les deux noms sont interchangeables.

Pour l’authentification par mot de passe, l’utilisation de Authentication=ActiveDirectoryPassword dans la chaîne du fournisseur indique au serveur lié d’utiliser l’authentification par mot de passe Microsoft Entra. Une connexion de serveur lié doit être créée pour mapper chaque connexion sur S1 à une connexion Microsoft Entra sur S2.

  1. Dans SSMS, connectez-vous à S1 et développez Objets serveur dans la fenêtre Explorateur d’objets.

  2. Cliquez avec le bouton droit sur Serveurs liés et sélectionnez Nouveau serveur lié.

  3. Renseignez les détails de votre serveur lié :

    • Serveur lié : S2 ou utilisez le nom de votre serveur lié.
    • Type de serveur : Other data source.
    • Fournisseur : Microsoft OLE DB Driver for SQL Server.
    • Nom du produit : laissez vide.
    • Source de données : laissez vide.
    • Chaîne du fournisseur : Server=<fqdn of S2>;Authentication=ActiveDirectoryPassword.
    • Catalogue : laissez vide.

    Capture d’écran de la création d’un serveur lié avec l’authentification par mot de passe

  4. Sélectionnez l'onglet Sécurité .

  5. Sélectionnez Ajouter.

    • Connexion locale : spécifiez le nom de connexion utilisé pour se connecter à S1.
    • Emprunter l’identité : laissez décoché.
    • Utilisateur distant : nom d’utilisateur de l’utilisateur Microsoft Entra utilisé pour se connecter à S2, au format user@contoso.com.
    • Mot de passe distant : mot de passe de l’utilisateur Microsoft Entra.
    • Si une connexion n’est pas définie dans la liste ci-dessus, les connexions sont  : Not be made
  6. Cliquez sur OK.

    Capture d’écran de la définition de la sécurité pour le serveur lié

Configuration du serveur lié avec l’authentification par jeton d’accès

Pour l’authentification par jeton d’accès, le serveur lié est créé avec AccessToken=%s dans la chaîne du fournisseur. Une connexion de serveur lié est créée pour mapper chaque connexion dans S1 à une application Microsoft Entra, qui a reçu des autorisations de connexion à S2. L’application doit avoir un secret attribué, utilisé par S1 pour générer le jeton d’accès. Vous pouvez créer un secret en accédant à Portail Azure>Microsoft Entra ID>Inscriptions d’applications>YourApplication>Certificats et secrets>Nouveau secret client.

Capture d’écran de la création d’un secret client pour une application dans le portail Azure

  1. Dans SSMS, connectez-vous à S1 et développez Objets serveur dans la fenêtre Explorateur d’objets.

  2. Cliquez avec le bouton droit sur Serveurs liés et sélectionnez Nouveau serveur lié.

  3. Renseignez les détails de votre serveur lié :

    • Serveur lié : S2 ou utilisez le nom de votre serveur lié.
    • Type de serveur : Other data source.
    • Fournisseur : Microsoft OLE DB Driver for SQL Server.
    • Nom du produit : laissez vide.
    • Source de données : laissez vide.
    • Chaîne du fournisseur : Server=<fqdn of S2>;AccessToken=%s.
    • Catalogue : laissez vide.

    Capture d’écran de la création d’un serveur lié avec l’authentification par jeton d’accès

  4. Sélectionnez l'onglet Sécurité .

  5. Sélectionnez Ajouter.

    • Connexion locale : spécifiez le nom de connexion utilisé pour se connecter à S1.
    • Emprunter l’identité : laissez décoché.
    • Utilisateur distant : ID client de l’application Microsoft Entra utilisée pour se connecter à S2. L’ID d’application (client) se trouve dans le menu Vue d’ensemble de votre application Microsoft Entra.
    • Mot de passe distant : ID de secret obtenu en créant un Nouveau secret client pour l’application.
    • Si une connexion n’est pas définie dans la liste ci-dessus, les connexions sont  : Not be made
  6. Cliquez sur OK.

Voir aussi