Authentification Microsoft Entra comme alternative à l’authentification SQL
S’applique à :✅ point de terminaison d’analytique SQL et entrepôt dans Microsoft Fabric
Cet article traite des méthodes techniques que les utilisateurs et les clients peuvent utiliser pour passer de l’authentification SQL à l’authentification Microsoft Entra au sein de Microsoft Fabric. L’authentification Microsoft Entra est une alternative aux noms d’utilisateur et aux mots de passe via l’authentification SQL pour la connexion au point de terminaison d’analytique SQL du lakehouse ou de l’entrepôt dans Microsoft Fabric. L’authentification Microsoft Entra est conseillée et essentielle pour la création d’une plateforme de données sécurisée.
Cet article se concentre sur l’authentification Microsoft Entra comme alternative à l’authentification SQL dans les éléments Microsoft Fabric tels qu’un entrepôt ou lakehouse de point de terminaison d’analytique SQL.
Avantages de l’authentification Microsoft Entra dans Fabric
L’un des principes fondamentaux de Microsoft Fabric est la sécurisation par conception. Microsoft Entra fait partie intégrante de la sécurité de Microsoft Fabric en garantissant une protection des données, une gouvernance et une conformité fortes.
Microsoft Entra joue un rôle crucial dans la sécurité de Microsoft Fabric pour plusieurs raisons :
- Authentification : vérifiez les utilisateurs et les principaux de service à l’aide de Microsoft Entra ID, qui accorde des jetons d’accès pour les opérations dans Fabric.
- Accès sécurisé : connectez-vous de manière sécurisée aux applications cloud à partir de n’importe quel appareil ou réseau, en protégeant les demandes adressées à Fabric.
- Accès conditionnel : les administrateurs peuvent définir des stratégies qui évaluent le contexte de connexion utilisateur, contrôlent l’accès ou appliquent des étapes de vérification supplémentaires.
- Intégration : Microsoft Entra ID fonctionne en toute transparence avec toutes les offres Microsoft SaaS, notamment Fabric, ce qui facilite l’accès entre les appareils et les réseaux.
- Plateforme vaste : Accédez à Microsoft Fabric avec Microsoft Entra ID via n’importe quelle méthode, que ce soit via le portail Fabric, une chaîne de connexion SQL, l’API REST ou le point de terminaison XMLA.
Microsoft Entra adopte une stratégie de Confiance Zéro complète, offrant une alternative supérieure à l’authentification SQL traditionnelle limitée aux noms d’utilisateur et aux mots de passe. Cette approche a les caractéristiques suivantes :
- Empêche l’usurpation d’identité des utilisateurs.
- Permet un contrôle d’accès affiné compte tenu de l’identité de l’utilisateur, de l’environnement, des appareils, etc.
- Prend en charge la sécurité avancée comme l’authentification multifacteur Microsoft Entra.
Configuration de Fabric
L’authentification Microsoft Entra pour une utilisation avec un point de terminaison d’entrepôt ou de lakehouse d’analytique SQL nécessite une configuration dans les paramètres Client et Espace de travail.
Paramètre de locataire
Un administrateur Fabric de votre locataire doit autoriser l’accès des noms de principal du service (SPN) aux API Fabric. Cela est nécessaire pour que le SPN serve d’interface pour les chaînes de connexion SQL à l’entrepôt Warehouse ou aux éléments de point de terminaison d’analytique SQL.
Ce paramètre se trouve dans la section Paramètres du développeur et est intitulé Les principaux de service peuvent utiliser les API Fabric. Vérifiez qu’elle est activée.
Paramètres de l’espace de travail
Un administrateur Fabric de votre espace de travail doit accorder l’accès à un utilisateur ou à un SPN pour accéder aux éléments Fabric.
Il existe deux moyens par lesquels un utilisateur/SPN peut obtenir l’autorisation d’accès :
Accorder une appartenance d’utilisateur/SPN à un rôle : tout rôle d’espace de travail (administrateur, membre, contributeur ou visionneur) est suffisant pour se connecter à des éléments d’entrepôt ou de lakehouse avec une chaîne de connexion SQL.
- Dans l’option Gérer l’accès dans l’espace de travail, attribuez le rôle Contributeur. Pour plus d’informations, consultez Rôles de service.
Affecter un utilisateur/SPN à un élément spécifique : accordez l’accès à un point de terminaison d’analytique SQL ou d’entrepôt spécifique d’un Lakehouse. Un administrateur Fabric peut choisir parmi différents niveaux d’autorisation.
- Accédez à l’élément de point de terminaison d’entrepôt ou d’analytique SQL approprié.
- Sélectionnez Plus d’options puis Gérer les autorisations. Sélectionnez Ajouter un utilisateur.
- Ajoutez l’utilisateur/le SPN sur la page Accorder l’accès à des personnes.
- Attribuez les autorisations nécessaires à un utilisateur/SPN. Choisissez aucune Autorisation supplémentaire pour accorder des autorisations de connexion uniquement.
Vous pouvez modifier les autorisations par défaut accordées à l’utilisateur ou au SPN par le système. Utilisez les commandes T-SQL GRANT et DENY pour modifier les autorisations en fonction des besoins, ou ALTER ROLE pour ajouter l’appartenance aux rôles.
Actuellement, les SPN n’ont pas la capacité en tant que comptes d’utilisateur pour une configuration d’autorisation détaillée avec GRANT
/DENY
.
Prise en charge des identités utilisateur et des noms de principaux de service (SPN)
Fabric prend en charge nativement l’authentification et l’autorisation pour les utilisateurs Microsoft Entra et les noms de principal de service (SPN) dans les connexions SQL à l’entrepôt et aux éléments de point de terminaison d’analytique SQL.
- Les identités utilisateur sont les informations d’identification uniques pour chaque utilisateur au sein d’une organisation.
- Les SPN représentent des objets d’application au sein d’un client et agissent comme l’identité des instances d’applications, prenant le rôle d’authentification et d’autorisation de ces applications.
Prise en charge du flux de données tabulaires (TDS)
Fabric utilise le protocole TDS (Tabular Data Stream), identique à SQL Server, lorsque vous vous connectez avec une chaîne de connexion.
Fabric est compatible avec n’importe quelle application ou outil capable de se connecter à un produit avec le moteur de base de données SQL. Comme pour une connexion d’instance SQL Server, TDS fonctionne sur le port TCP 1433. Pour plus d’informations sur la connectivité SQL Fabric et la recherche de la chaîne de connexion SQL, consultez Connectivité.
Un exemple de chaîne de connexion SQL se présente ainsi : <guid_unique_your_item>.datawarehouse.fabric.microsoft.com
.
Les applications et les outils clients peuvent définir la propriété de connexion Authentication
dans la chaîne de connexion pour choisir un mode d’authentification Microsoft Entra. Le tableau suivant détaille les différents modes d’authentification Microsoft Entra, notamment la prise en charge de l’Authentification multifacteur Microsoft Entra (MFA).
Mode d'authentification | Scénarios | Commentaires |
---|---|---|
Interaction Microsoft Entra | Utilisée par des applications ou des outils dans des situations où l’authentification utilisateur peut se produire de manière interactive ou lorsqu’il est acceptable d’avoir une intervention manuelle pour la vérification des informations d’identification. | Activer MFA et les stratégies d’accès conditionnel Microsoft Entra pour appliquer des stratégies organisationnelles. |
Principal de service Microsoft Entra | Utilisée par les applications pour l’authentification sécurisée sans intervention humaine, la plus adaptée à l’intégration d’applications. | Il est conseillé d’activer Stratégies d’accès conditionnel Microsoft Entra. |
Mot de passe Microsoft Entra | Lorsque les applications ne peuvent pas utiliser l’authentification basée sur SPN en raison d’une incompatibilité, ou nécessitent un nom d’utilisateur et un mot de passe génériques pour de nombreux utilisateurs, ou si d’autres méthodes ne sont pas réalisables. | La MFA doit être désactivée et aucune stratégie d’accès conditionnel ne peut être définie. Nous vous recommandons de valider auprès de l’équipe de sécurité du client avant de choisir cette solution. |
Prise en charge du pilote pour l’authentification Microsoft Entra
Bien que la plupart des pilotes SQL aient initialement pris en charge l’authentification Microsoft Entra, les mises à jour récentes ont étendu la compatibilité pour inclure l’authentification basée sur SPN. Cette amélioration simplifie le passage à l’authentification Microsoft Entra pour diverses applications et divers outils via des mises à niveau de pilotes et l’ajout de la prise en charge de l’authentification Microsoft Entra.
Toutefois, il est parfois nécessaire d’ajuster des paramètres supplémentaires tels que l’activation de certains ports ou pare-feu pour faciliter l’authentification Microsoft Entra sur l’ordinateur hôte.
Les applications et les outils doivent mettre à niveau les pilotes vers des versions qui prennent en charge l’authentification Microsoft Entra et ajouter un mot clé de mode d’authentification dans leur chaîne de connexion SQL, comme ActiveDirectoryInteractive
, ActiveDirectoryServicePrincipal
ou ActiveDirectoryPassword
.
Fabric est compatible avec les pilotes natifs de Microsoft, notamment OLE DB, Microsoft.Data.SqlClient
et les pilotes génériques tels qu’ODBC et JDBC. La transition pour que les applications fonctionnent avec Fabric peut être gérée par le biais de la reconfiguration pour utiliser l’authentification basée sur Microsoft Entra ID.
Plus d’informations, consultez Connectivité à l’entrepôt de données dans Microsoft Fabric.
Microsoft OLE DB
OLE DB Driver pour SQL Server est une API d’accès aux données autonome conçue pour OLE DB et publiée pour la première fois avec SQL Server 2005 (9.x). Depuis, les fonctionnalités étendues incluent l’authentification basée sur SPN avec la version 18.5.0, qui s’ajoute aux méthodes d’authentification existantes des versions antérieures.
Mode d'authentification | Chaîne de connexion SQL |
---|---|
Interaction Microsoft Entra | Authentification interactive Microsoft Entra |
Principal de service Microsoft Entra | Authentification du principal de service Microsoft Entra |
Mot de passe Microsoft Entra | Authentification par nom d’utilisateur et mot de passe Microsoft Entra |
Pour obtenir un extrait de code C# utilisant OLE DB avec l’authentification basée sur SPN, consultez System.Data.OLEDB.Connect.cs.
Pilote Microsoft ODBC
Microsoft ODBC Driver for SQL Server est une bibliothèque de liens dynamiques (DLL) unique qui prend en charge l’exécution des applications utilisant les API en code natif pour se connecter à SQL Server. Il est recommandé d’utiliser la version la plus récente pour les applications à intégrer à Fabric.
Pour plus d’informations sur l’authentification Microsoft Entra avec ODBC, consultez Utiliser Microsoft Entra ID avec l’exemple de code ODBC Driver.
Mode d'authentification | SQL Connection String |
---|---|
Interaction Microsoft Entra | DRIVER={ODBC Driver 18 for SQL Server};SERVER=<SQL Connection String>;DATABASE=<DB Name>;UID=<Client_ID@domain>;PWD=<Secret>;Authentication=ActiveDirectoryInteractive |
Principal de service Microsoft Entra | DRIVER={ODBC Driver 18 for SQL Server};SERVER=<SQL Connection String>;DATABASE=<DBName>;UID=<Client_ID@domain>;PWD=<Secret>;Authentication=ActiveDirectoryServicePrincipal |
Mot de passe Microsoft Entra | DRIVER={ODBC Driver 18 for SQL Server};SERVER=<SQL Connection String>;DATABASE=<DBName>;UID=<Client_ID@domain>;PWD=<Secret>;Authentication=ActiveDirectoryPassword |
Pour obtenir un extrait de code Python utilisant ODBC avec l’authentification basée sur SPN, consultez pyodbc-dw-connectivity.py.
Microsoft JDBC Driver
Le pilote Microsoft JDBC pour SQL Server est un pilote JDBC de type 4 offrant une connectivité de base de données par le biais des API JDBC standard, disponibles sur la plateforme Java.
À partir de la version 9.2, mssql-jdbc
introduit la prise en charge de ActiveDirectoryInteractive
et ActiveDirectoryServicePrincipal
, avec la prise en charge de ActiveDirectoryPassword
dans les versions 12.2 et ultérieures. Ce pilote nécessite des fichiers jar supplémentaires en tant que dépendances, qui doivent être compatibles avec la version de mssql-driver
utilisée dans votre application. Pour plus d’informations, consultez Dépendances de fonctionnalités du pilote JDBC et Exigences de configuration du client.
Mode d'authentification | Plus d’informations |
---|---|
Interaction Microsoft Entra | Se connecter à l’aide du mode d’authentification ActiveDirectoryInteractive |
Principal de service Microsoft Entra | Se connecter à l’aide du mode d’authentification ActiveDirectoryServicePrincipal |
Mot de passe Microsoft Entra | Se connecter à l’aide du mode d’authentification ActiveDirectoryPassword |
Pour obtenir un extrait de code Java utilisant JDBC avec l’authentification basée sur SPN, consultez fabrictoolbox/dw_connect.java et exemple de fichier pom pom.xml.
Microsoft.Data.SqlClient dans .NET Core (C#)
Le Microsoft.Data.SqlClient est un fournisseur de données pour Microsoft Sql Server et Azure SQL Database. Il s’agit d’une union des deux composants System.Data.SqlClient
qui vivent indépendamment dans .NET Framework et .NET Core, fournissant un ensemble de classes pour accéder aux bases de données Microsoft SQL Server. Microsoft.Data.SqlClient
est recommandé pour tout nouveau ou futur développement.
Mode d'authentification | Plus d’informations |
---|---|
Interaction Microsoft Entra | Utilisation de l’authentification interactive |
Principal de service Microsoft Entra | Utilisation de l’authentification de principal de service |
Mot de passe Microsoft Entra | Utilisation de l’authentification par mot de passe |
Extraits de code utilisant des SPN :