2017-09-19 4 views
1

Je dois changer la connexion de base de données d'un site Web de nom d'utilisateur et mot de passe dans la chaîne de connexion à NTLM - d'après ce qu'on m'a dit, cela devrait juste être une question de mise à jour de la chaîne de connexion.NTLM chaîne de connexion sql

J'ai passé un certain temps à faire du chalutage ici et sur le web en général; J'ai trouvé beaucoup de pages très confuses qui expliquent le fonctionnement de NTLM (je n'ai jamais eu à travailler avec un quelconque type d'authentification auparavant), mais je n'ai pas trouvé un exemple simple de configuration de la chaîne de connexion dans mon web.config pour utilisez NTLM. Quelqu'un peut-il donner un exemple de l'apparence d'une chaîne de connexion configurée par NTLM (j'ai les noms et les mots de passe des comptes de service)? Si j'ai été mal informé, quelqu'un peut-il me diriger vers une étape par étape? étape guide sur la façon d'intégrer cette connexion dans mon site Web?

+0

Ce n'est pas appelé NTLM. Il a été * jamais * appelé NTLM en parlant de la base de données. Il a toujours été intégré ou l'authentification Windows. –

+0

Vous (l'application, le serveur, peu importe) * ne devez * rien savoir sur le protocole. Lorsqu'une application essaie d'utiliser une ressource, qu'il s'agisse d'un fichier, d'un partage réseau ou d'une base de données distante, l'OS lui-même appelle l'utilisateur. –

Répondre

2

Vous avez peut-être du mal à trouver des informations décentes à ce sujet, car il n'est plus normalement appelé NTLM. Dans le langage SQL Server, ce que vous recherchez est «Sécurité intégrée». Vous pouvez spécifier dans votre connection string comme:

Server=SomeServer;Database=SomeDatabase;Integrated Security=SSPI; 

Et cela devrait être suffisant - la sécurité de connexion sera basée sur les fenêtres compte utilisateur sous lequel le code est en cours d'exécution, plutôt que de fournir explicitement une combinaison nom d'utilisateur/mot de passe.

SSPI signifie Security Support Provider Interface et est utilisé pour indiquer qu'une gamme des protocoles de sécurité, tels que NTLM et Kerberos peuvent être négociés.

+0

Je pense que même le mot-clé SSPI n'est plus utilisé, car SSPI lui-même a été remplacé. Les chaînes de connexion suivantes utilisent 'Trusted_Connection = true'. –

+0

@PanagiotisKanavos - 'SSPI' est la valeur préférée à utiliser puisque' true' et 'sspi' sont interchangeables pour le fournisseur SQL Server mais d'autres fournisseurs ne supportent que (s)' sspi' - voir [ici] (https: // stackoverflow.com/a/23637478/15498) –