PRB: mesaj de eroare "client incapabil de a stabili conexiunea" atunci când vă conectați de la ASP la SQL Server


Simptome


Atunci când deschideți o conexiune în cod Active Server Pages (ASP) la SQL Server pe un computer separat de pe serverul web, pot apărea unul dintre aceste mesaje de eroare similare:
Microsoft OLE DB Provider pentru ODBC Drivers error ' 80004005 ' [Microsoft] [ODBC SQL Server driver] clientul nu poate stabili conexiunea/asppage. ASP, line xxx
sau
Microsoft OLE DB Provider pentru SQL Server Error ' 80004005 ' [DBNMPNTW] ConnectionOpen (CreateFile ())./asppage.ASP, linie xxx
sau
Microsoft OLE DB Provider for ODBC Drivers error ' 80040ed ' [Microsoft] [ODBC SQL Server driver] [SQL Server] Login failed pentru user ' NT Authority\Anonymous logon './asppage.ASP, linie xxx

Cauză


Această eroare apare dacă modul de securitate SQL Server este setat doar la Microsoft Windows NT și contul NT care este utilizat pentru a autentifica utilizatorul pe computerul IIS (cum ar fi IUSR_computer pentru Anonymous IIS Access) nu are permisiuni să se conecteze la computerul NT SQL Server la distanță.

Rezolvare


Utilizarea accesului anonim IIS
  1. Utilizând instrumentul Manager de utilizatori NT, creați un cont NT identic, cum ar fi IUSR_localcomputer, pe computerul NT de la distanță SQL Server. Dați contului o parolă similară și dați-i dreptul la "Log on local".
  2. Utilizând Manager servicii Internet, deschideți foaia de proprietăți a directorului virtual pentru aplicația web, selectați fila Securitate Director , faceți clic pe butonul Editare pentru acces anonim și controlul de autentificare pentru a afișa metodele de autentificare . Faceți clic pe butonul Editare pentru a permite accesul anonim pentru a edita contul NT utilizat pentru acces anonim, apoi debifați caseta de selectare se Activează sincronizarea automată a parolelor. Salvați modificările făcând clic pe OK pentru a închide caseta de dialog. Acest al doilea pas este necesar din cauza problemelor legate de delegarea contului cu NT.
Utilizarea autentificării IIS de bază
  1. Consultați pașii anteriori dacă utilizatorii se conectează la IIS utilizând conturi locale la serverul NT cu IIS când vi se solicită numele de utilizator și parola de către browser.
  2. Dacă utilizatorii se conectează utilizând un cont de domeniu și ambele computere NT pentru IIS și SQL Server se află în același domeniu, asigurați-vă că conturile au dreptul de "a accesa acest computer dintr-o rețea" pe computerul NT SQL Server, direct sau indirect, pe baza drepturilor atribuite unui grup din care contul este membru.