Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
S’applique à :SQL Server sur Windows
SQL Server Browser (sqlbrowser) s’exécute en tant que service pour aider les ordinateurs clients à trouver des instances de SQL Server sur un serveur exécutant Windows. SQL Server Browser est installé avec SQL Server. Le service SQL Server Browser n’a pas besoin d’être configuré, mais doit s’exécuter dans certains scénarios de connexion.
SQL Server Browser peut vous aider à :
Affichage de la liste des serveurs disponibles. Pour chaque instance du moteur de base de données et de SQL Server Analysis Services (SSAS), le service SQL Server Browser fournit le nom de l’instance et le numéro de version.
Connexion à l’instance correcte du serveur.
Connexion aux points de terminaison d’une connexion administrateur dédiée (DAC).
Configurer le service SQL Server Browser
SQL Server Browser peut être configuré pendant l’installation ou en utilisant le Gestionnaire de configuration. Par défaut, le service SQL Server Browser démarre automatiquement :
- lors de la mise à niveau d'une installation ;
- lors d'une installation sur un cluster ;
- Lors de l’installation d’une instance nommée du moteur de base de données, notamment toutes les instances de SQL Server Express ;
- lors de l’installation d’une instance nommée de SSAS.
Fonctionnement de SQL Server Browser
Les sections suivantes décrivent le fonctionnement du service SQL Server Browser.
- Port TCP/IP ou affectation de canal nommé
- Instances nommées et ports dynamiques
- Processus de démarrage et découverte de ports SQL Server
Port TCP/IP ou affectation de canal nommé
Lorsqu’une instance de SQL Server démarre et que le protocole TCP/IP est activé pour SQL Server, l’instance reçoit un port TCP/IP. Si le protocole des canaux nommés est activé, SQL Server est à l'écoute d'un canal nommé spécifique. Ce port ou canal nommé est utilisé par cette instance spécifique pour l'échange de données avec les applications clientes. Le port 1433 ET le canal \sql\query TCP/IP sont affectés à l’instance par défaut pendant l’installation. L’administrateur du serveur peut modifier le port ou le canal nommé à l’aide du Gestionnaire de configuration SQL Server.
Instances nommées et ports dynamiques
Étant donné qu’une seule instance de SQL Server peut utiliser un port ou un canal, différents numéros de port et noms de canal sont attribués pour les instances nommées, y compris l’édition SQL Server Express. Lorsque cette option est activée, les instances nommées et SQL Server Express sont configurés pour utiliser des ports dynamiques par défaut. Autrement dit, un port disponible est affecté au démarrage de SQL Server.
Si nécessaire, un port spécifique peut être attribué à une instance de SQL Server. Les clients peuvent définir un port spécifique quand ils se connectent à SQL Server. Toutefois, si le port est attribué dynamiquement, le numéro de port peut changer chaque fois que l’instance SQL Server est redémarrée. Par conséquent, le numéro de port correct est inconnu du client.
Processus de démarrage et découverte de ports SQL Server
Au démarrage, SQL Server Browser démarre et revendique le port 1434UDP (User Datagram Protocol). SQL Server Browser lit le Registre, identifie toutes les instances de SQL Server sur l’ordinateur, puis note les ports et autres canaux nommés qu’elles utilisent. Quand un serveur est équipé de deux cartes réseau ou plus, SQL Server Browser retourne le premier port activé qu’il détecte pour SQL Server. SQL Server Browser prend en charge IPv4 et IPv6.
Lorsque les clients SQL Server demandent des ressources SQL Server, la bibliothèque de réseau client envoie un message UDP au serveur à l’aide du port 1434. SQL Server Browser répond avec le port TCP/IP ou canal nommé de l’instance demandée. La bibliothèque réseau de l'application cliente établit alors la connexion en envoyant une demande au serveur en utilisant le port ou le canal nommé de l'instance souhaitée.
Pour plus d’informations sur le démarrage et l’arrêt du service SQL Server Browser, consultez Démarrer, arrêter, suspendre, reprendre et redémarrer les services SQL Server.
Utiliser SQL Server Browser
Si le service SQL Server Browser n’est pas en cours d’exécution, vous pouvez quand même vous connecter à SQL Server si vous fournissez le numéro de port ou le canal nommé approprié. Par exemple, vous pouvez vous connecter à l’instance par défaut de SQL Server avec TCP/IP si elle s’exécute sur le port 1433.
Toutefois, si le service SQL Server Browser n’est pas en cours d’exécution, les connexions suivantes ne fonctionnent pas :
tout composant essayant de se connecter à une instance nommée sans spécifier intégralement tous les paramètres (tels que le port TCP/IP ou le canal nommé) ;
Tout composant qui génère ou transmet
<server>\<instance>des informations que d’autres composants peuvent utiliser ultérieurement pour se reconnecter.connexion à une instance nommée sans fournir le numéro de port ou le canal de communication ;
Connexion de diagnostic pour les administrateurs de base de données à une instance nommée ou à l’instance par défaut si elle n’utilise pas le port
1433TCP/IP.Service de redirecteur OLAP (Online Analytical Processing).
Énumération de serveurs dans SQL Server Management Studio.
Supposons que vous utilisez SQL Server dans un scénario client-serveur (par exemple, lorsque votre application accède à SQL Server sur un réseau). Si vous arrêtez ou désactivez le service SQL Server Browser, vous devez affecter un numéro de port spécifique à chaque instance et configurer votre code d’application cliente pour utiliser ce numéro de port. Cette approche présente les inconvénients suivants :
Vous devez mettre à jour et maintenir le code de l’application cliente pour vous assurer qu’elle se connecte au port correct.
Le port que vous choisissez pour chaque instance peut être utilisé par un autre service ou une autre application sur le serveur, ce qui entraîne l’indisponibilité de l’instance de SQL Server.
Clusters et SQL Server Browser
SQL Server Browser n'est pas une ressource en cluster et ne prend pas en charge le basculement d'un nœud de cluster à un autre. Par conséquent, si un cluster est présent, SQL Server Browser doit être installé et activé pour chaque nœud de cluster. Dans les clusters, SQL Server Browser est à l’écoute sur IP_ANY.
Note
Lorsque SQL Server Browser écoute IP_ANY et que vous activez l’écoute sur des adresses IP spécifiques, vous devez configurer le même port TCP/IP sur chaque adresse IP, car SQL Server Browser retourne la première adresse IP et la paire de ports qu’elle rencontre.
Installer, désinstaller et exécuter à partir de la ligne de commande
Par défaut, le programme SQL Server Browser est installé sur <drive>:\Program Files (x86)\Microsoft SQL Server\<nn>\Shared\sqlbrowser.exe.
Le service SQL Server Browser est désinstallé quand la dernière instance de SQL Server est supprimée.
SQL Server Browser peut être démarré à partir de la ligne de commande pour la résolution des problèmes à l'aide du paramètre -c.
<drive>\<path>\sqlbrowser.exe -c
Sécurité
Le service SQL Server Browser est indispensable pour faciliter la communication réseau avec les instances du SQL Server.
Les mesures de sécurité du service SQL Server Browser sont les suivantes :
Configuration des pare-feu pour autoriser son trafic.
Limitation de l’accès aux adresses IP de confiance
Application régulière de mises à jour pour corriger les vulnérabilités.
En outre, vous devez implémenter des stratégies d’authentification et d’autorisation fortes pour empêcher tout accès non autorisé et maintenir l’intégrité de votre environnement SQL Server.
Privilèges de compte
SQL Server Browser est à l’écoute d’un port UDP et accepte les demandes non authentifiées à l’aide du protocole SSRP (SQL Server Resolution Protocol). SQL Server Browser doit être exécuté dans le contexte de sécurité d’un utilisateur doté de faibles privilèges afin de limiter les risques d’attaque malveillante. Le compte de connexion peut être modifié à partir du gestionnaire de configuration SQL Server.
Les droits d’utilisateur minimaux pour SQL Server Browser sont les suivants :
- Refuser l’accès à cet ordinateur à partir du réseau.
- Refusez la connexion locale.
- Refusez la connexion en tant que tâche de traitement par lots.
- Refuser l’ouverture de session par les services Terminal Server.
- Connectez-vous en tant que service.
- Lire et écrire les clés de Registre SQL Server relatives à la communication réseau (ports et canaux).
Compte par défaut
Le programme d’installation configure SQL Server Browser de sorte qu’il utilise le compte sélectionné pour les services au cours de l’installation. Les autres comptes possibles sont les suivants :
- Tout compte domaine\local.
- Le compte de service local.
- Le compte système local (non recommandé, car il a des privilèges inutiles).
Masquer SQL Server
Les instances masquées sont des instances de SQL Server qui ne prennent en charge que les connexions de mémoire partagée. Pour SQL Server, définissez l’indicateur HideInstance pour indiquer que SQL Server Browser ne doit pas répondre par des informations sur cette instance de serveur.
Utiliser un pare-feu
Pour communiquer avec le service SQL Server Browser sur un serveur derrière un pare-feu, ouvrez le port UDP et le port 1434 TCP/IP utilisé par SQL Server (par exemple, 1433). Pour plus d’informations sur l’utilisation d’un pare-feu, consultez Configurer le Pare-feu Windows pour autoriser l’accès à SQL Server.