Authentification Kerberos et SQL Server

Kerberos est un protocole d'authentification de réseau qui offre une méthode très sûre pour authentifier les entités cliente et serveur (entités de sécurité) sur un réseau. Ces entités de sécurité utilisent l'authentification qui repose sur des clés principales et des tickets chiffrés.

Dans le modèle de protocole Kerberos, chaque connexion client/serveur commence par l'authentification. L'un après l'autre, le client et le serveur passent par une séquence d'actions visant à vérifier l'authenticité de la partie située à l'extrémité opposée de la connexion. Si l'authentification réussit, la configuration de la session est effectuée et une session client/serveur sécurisée est établie.

Voici quelques-uns des avantages de l'authentification Kerberos :

  • Authentification mutuelle. Le client peut valider l'identité de l'entité de serveur, et le serveur peut valider le client. Dans cette documentation, les deux entités sont appelées le « client » et le « serveur » bien que des connexions réseau sécurisées puissent être établies entre les serveurs.

  • Tickets d'authentification sécurisés. Seuls des tickets chiffrés sont utilisés. Par ailleurs, les mots de passe ne sont jamais inclus dans le ticket.

  • Authentification intégrée. Une fois qu'un utilisateur est connecté, il peut accéder à tout service prenant en charge l'authentification Kerberos sans avoir besoin de se reconnecter tant que le ticket client n'a pas expiré. Chaque ticket a une durée de vie qui est déterminée par la stratégie du domaine Kerberos qui génère le ticket.

Kerberos propose un mécanisme permettant l'authentification mutuelle entre des entités avant établissement d'une connexion réseau sécurisée. Kerberos utilise un tiers approuvé, le centre de distribution de clés, pour faciliter la génération et la distribution sécurisée de tickets d'authentification et de clés de session symétriques. Le centre de distribution de clés s'exécute en tant que service sur un serveur sécurisé et gère une base de données pour toutes les entités de sécurité de son domaine. Dans le contexte Kerberos, un domaine est l'équivalent d'un domaine Windows.

Notes

La sécurité de la clé principale relève de la responsabilité du client et du serveur ; le centre de distribution de clés fournit uniquement le service d'attribution de ticket.

Dans un environnement Windows, le contrôleur de domaine est responsable du fonctionnement du centre de distribution de clés qui utilise généralement Active Directory. Tous les utilisateurs de domaine Windows sont en effet des entités Kerberos et sont en mesure d'utiliser l'authentification Kerberos.

Kerberos avec SQL Server

SQL Server prend en charge Kerberos indirectement via l'interface SSPI (Interface Windows Security Support Provider) lorsque SQL Server utilise l'authentification Windows. L'interface SSPI permet à une application d'utiliser différents modèles de sécurité disponibles sur un ordinateur ou réseau sans modifier l'interface du système de sécurité.

SQL Server permet à l'interface SSPI de négocier le protocole d'authentification à utiliser. Si Kerberos ne peut pas être utilisé, Windows reviendra à l'authentification NTLM (Windows NT Challenge/Response).

SQL Server 2008 prend en charge l'authentification Kerberos sur les protocoles suivants :

  • TCP/IP

  • Canaux nommés

  • Mémoire partagée

Pour plus d'informations sur ces protocoles, consultez Protocoles réseau et points de terminaison TDS.

Nous vous recommandons d'utiliser l'authentification Kerberos dès que vous en avez la possibilité pour les connexions à une instance de SQL Server.