Connecter Azure Data Studio à SQL Server à l’aide de Kerberos
Azure Data Studio prend en charge la connexion à SQL Server à l’aide de Kerberos.
Pour utiliser l’authentification intégrée (authentification Windows) sur macOS ou Linux, vous devez configurer un ticket Kerberos qui lie votre utilisateur actuel à un compte de domaine Windows.
Prérequis
Pour commencer, vous avez besoin des éléments suivants :
Accédez à un ordinateur Windows joint à un domaine pour interroger votre contrôleur de domaine Kerberos.
SQL Server doit être configuré pour autoriser l’authentification Kerberos. Pour le pilote client s’exécutant sur Unix, l’authentification intégrée est prise en charge uniquement avec Kerberos. Pour plus d’informations, consultez Utiliser l’authentification intégrée Kerberos pour se connecter à SQL Server. Des noms de principal du service (SPN) doivent être inscrits pour chaque instance de SQL Server à laquelle vous essayez de vous connecter. Pour plus d’informations, consultez Inscrire un nom de principal du service pour les connexions Kerberos.
Vérifier la configuration de Kerberos pour SQL Server
Connectez-vous à l’ordinateur hôte de SQL Server. À partir de l’invite de commandes Windows, utilisez setspn -L %COMPUTERNAME%
pour lister tous les SPN de l’hôte. Vérifiez qu’il existe des entrées qui commencent par MSSQLSvc/HostName.contoso.com
. Ces entrées signifient que SQL Server a inscrit un nom de principal du service et qu’il est prêt à accepter l’authentification Kerberos.
Si vous n’avez pas accès à l’hôte de l’instance SQL, à partir de tout autre système d’exploitation Windows joint au même Active Directory, vous pouvez utiliser la commande setspn -L <SQLSERVER_NETBIOS>
, où <SQLSERVER_NETBIOS> est le nom de l’ordinateur hôte de l’instance SQL.
Obtenir le centre de distribution de clés Kerberos
Recherchez la valeur de configuration du centre de distribution de clés Kerberos. Exécutez la commande suivante sur un ordinateur Windows joint à votre domaine Active Directory.
Exécutez nltest
à partir de la ligne de commande, puis remplacez « DOMAIN.CONTOSO.COM » par votre nom de domaine.
nltest /dsgetdc:DOMAIN.CONTOSO.COM
La sortie ressemble à l’exemple suivant :
DC: \\dc-33.domain.contoso.com
Address: \\2111:4444:2111:33:1111:ecff:ffff:3333
...
The command completed successfully
Copiez le nom du contrôleur de domaine qui est la valeur de configuration KDC requise. Dans ce cas, il s’agit de dc-33.domain.contoso.com.
Joindre votre système d’exploitation au contrôleur de domaine Active Directory
sudo apt-get install realmd krb5-user software-properties-common python-software-properties packagekit
Modifiez le fichier /etc/network/interfaces
de sorte que l’adresse IP de votre contrôleur de domaine Active Directory soit répertoriée en tant que dns-nameserver
. Par exemple :
<...>
# The primary network interface
auto eth0
iface eth0 inet dhcp
dns-nameservers **<AD domain controller IP address>**
dns-search **<AD domain name>**
Notes
L’interface réseau (eth0) peut différer selon les machines. Pour déterminer celle que vous utilisez, exécutez ifconfig et copiez l’interface qui a une adresse IP et des octets transmis et reçus.
Après avoir modifié ce fichier, redémarrez le service réseau :
sudo ifdown eth0 && sudo ifup eth0
Vérifiez maintenant que votre fichier /etc/resolv.conf
contient une ligne semblable à la suivante :
nameserver **<AD domain controller IP address>**
Joignez-le au domaine Active Directory :
sudo realm join contoso.com -U 'user@CONTOSO.COM' -v
Voici la sortie attendue :
<...>
* Success
Tester la récupération de ticket d’attribution de ticket
Obtenez un TGT (Ticket Granting Ticket) auprès du KDC.
kinit username@DOMAIN.CONTOSO.COM
Affichez les tickets disponibles à l’aide de klist
. Si kinit
réussit, vous devez voir un ticket.
klist
Voici la sortie attendue :
krbtgt/DOMAIN.CONTOSO.COM@ DOMAIN.CONTOSO.COM.
Se connecter avec Azure Data Studio
Créez un profil de connexion.
Choisissez l’authentification Windows comme type d’authentification.
Pour le serveur, entrez un nom d’hôte complet, au format
hostname.DOMAIN.CONTOSO.COM
.Complétez le profil de connexion, puis cliquez sur Se connecter.
Une fois la connexion établie, votre serveur s’affiche dans la barre latérale SERVEURS.