sql >> Database >  >> RDS >> Sqlserver

PHP 5.3 herkent Native Client niet om verbinding te maken met MS SQL

Het bleek een toestemmingsprobleem te zijn.

Ik heb in php.ini de optie fastcgi.imipersonate gewijzigd in 0 en probeer het met verschillende identiteiten van de applicatiepool. Het werkte als lokaal systeem. Dit is een account met meer gebruikersrechten dan het Network Service- of Local Service-account. Houd er echter rekening mee dat het uitvoeren van een toepassingsgroep onder een account met verhoogde gebruikersrechten een hoog beveiligingsrisico met zich meebrengt. Bekijk deze artikelen voor meer referenties over de accounts en hoe u deze kunt configureren:

Configureren Identiteit van toepassingsgroep met IIS 6.0 (IIS 6.0) Servicegebruikersaccounts Servicebeveiliging en toegangsrechten

Ik besloot het terug te zetten naar Netwerkservice en heb Process Monitor * gedownload. Ik heb het vervolgens gebruikt om het proces w3wp te controleren, wat me liet zien dat toegang werd geweigerd op een registersleutel waar het pad naar sqlncli.dll is opgeslagen.

HKLM\Software\ODBC\ODBCINST.INI\SQL Native Client 10.0

Dus ik opende RegEdit en vond die sleutel

Ik heb met de rechtermuisknop op -> Machtigingen geklikt en Netwerkservice aan de lijst toegevoegd en deze leesmachtigingen gegeven.

De app-pool hergebruikt en het werkt nu!

Ik hoop dat dit helpt! Federico

*Hier staat een heel goed stapsgewijs artikel over het gebruik van procesmonitor.

http://www.iislogs.com/articles/processmonitorw3wp/



  1. Kan er een database-onafhankelijke SQL-query zijn om de bovenste N rijen op te halen?

  2. Hoe het weeknummer van een datum te extraheren in PostgreSQL

  3. Alleen PHP PDO laatste waarde van array wordt ingevoegd met bindValue &bindParam

  4. Upgraden van SonarQube van 4.5.2 naar 5.0 . mislukt