Problemer med SQL Server Express bruger instancing og ASP.NET Web Application projekter

Oversættelser af artikler Oversættelser af artikler
Artikel-id: 2002980 - Få vist de produkter, som denne artikel refererer til.
Udvid alle | Skjul alle

Symptomer

Webprogrammer, der kører på IIS 7,5 og stole på SQL Server Express bruger instancing mislykkes at køre ved hjælp af standard IIS 7.5 sikkerhedskonfiguration på både Windows Client 7 og Windows Server 2008 R2. Udviklere opstå problemer med at udvikle webprogrammer ved hjælp af Visual Studio 2005 + SQL Server Express 2005, Visual Studio 2008 + SQL Server Express 2008, eller Visual Studio 2010 + SQL Server Express 2008 på både Windows Client 7 og Windows Server 2008 R2.

Udviklere opstår lignende problemer, der forsøger at udvikle programmet webprojekter (WAP) eller websteder, der er placeret under IIS6/IIS7/IIS7.5, der er afhængige af SQL Server Express Brugerforekomster hvor WAP projektstruktur eller webstedet mappestruktur findes i mappen til en brugers dokumenter. Dette problem findes for alle versioner af Visual Studio uanset underliggende operativsystem-version. Et webprogram, der forsøger at oprette en database eller læse/skriveadgang til en database ved hjælp af SQL Server Express bruger forekomst tilstand kan støde nogen af følgende fejl:

Forsøg på at vedhæfte en database automatisk med navnet for filen c:\Users\[YourUserAccountName]\Documents\Visual Studio 20XX\Projects\[YourSolutionName]\[YourProjectnName]\App_Data\aspnetdb.mdf mislykkedes. Der findes en database med samme navn, eller angivne fil kan ikke åbnes eller den er placeret på UNC-share.


-- eller--


Kunne generere et bruger-forekomst af SQL Server på grund af i hentning af brugerens lokale data programstien. Kontroller, at brugeren har en lokal brugerprofil på computeren. Forbindelsen lukkes.


 

Bemærk: et webprogram er afhængig af SQL Server Express' bruger forekomst tilstand, hvis en af følgende gælder:

  • Programmet er afhængig af forbindelsesstrengen for standard "LocalSQLServer" defineret i machine.config
  • Programmet bruger en tilslutningsstreng, der indeholder følgende attributter:

    "AttachDBFilename=|DataDirectory|xxxxxx.mdf;User Instance = true"

 

 

Årsag

Til Windows Server 2008 R2 og Windows 7

Standard sikkerhedskonfigurationen for IIS 7.5 indstiller programgrupper til at køre som "programgruppe-id'et". Kører en programgruppe, der bruger denne særlige identitet blev først introduceret som en valgfri indstilling i Vista SP2 og Windows Server 2008 SP2. På Windows 7 klient- og Windows Server 2008 R2 er denne særlige identitet nu standard.
 
Webprogrammer, der er bygget med Visual Studio 2005, Visual Studio 2008 eller Visual Studio 2010 og, der er afhængige af brugeren instancing med enten SQL Server Express 2005 eller SQL Server Express 2008 fungerer ikke med nye programgruppeidentitet. Disse produkter blev udviklet og testet mod programgrupper, der kører med ældre NETWORK SERVICE-kontoen.

 

For Web Application projekter og websteder, der er placeret i en brugers dokumenter-mappe hosted i IIS

Webprojekter program (WAP) findes i mappestrukturen under en bruger "Documents\Visual Studio 20XX\Projects" mappe. Webstedet projekter findes i mappestrukturen under en bruger "Documents\Visual Studio 20XX\Websites" mappe. SQL Server Express Brugerforekomster kræver filen adgangsrettigheder til overordnede mapper af webstedet eller WAP projekt mappestruktur. Da IIS-tjenestekonto (NETWORK SERVICE) som standard ikke har disse rettigheder inden for Visual Studio project mappestruktur, WAP projekter og websteder, der er placeret i en brugers dokumenter og, der er placeret i IIS kan ikke åbne SQL Server Express bruger instanced databaser for læseadgang.
 
WAPs, der oprindeligt blev oprettet i en brugers dokumenter-mappe, men efterfølgende blev ændret til at bruge IIS til en Web-server via fanen web i projektets egenskaber støder problemet fil tilladelser. Websteder, der er placeret i IIS, hvor mappestruktur webstedet er placeret i mappen til dokumenter af en bruger vil også støder fil tilladelser problem. Denne funktionsmåde for WAP projekter og websteder, der er vært med alle IIS-versioner, der kører som NETWORK SERVICE (IIS6, IIS7 og IIS 7.5) hvor projektstruktur findes i mappen til en brugers dokumenter.

 

Løsning

Opløsning til Windows 7 og Windows Server 2008 R2

Udføre følgende trin for alle de webprogrammer, der kører under IIS 7.5 uanset deres projekttype:

  1. Køre værktøjet Internet Information Services (IIS) Manager. Dette værktøj kan åbnes fra menuen administrative start eller ved at skrive "inetmgr" i Windows Start--> Søg tekstboks og vælge inetmgr værktøj.
  2. Udvid noden maskine i venstre rude af værktøjet IIS Manager.
  3. Klikke på noden "Programgrupper", så programgrupper vises i hovedvinduet af værktøjet administration.
  4. Hvis du foretager fejlfinding af et ASP.NET-program i 2.0/3.0/3.5 Vælg programgruppe "DefaultAppPool". Vælg programgruppe "ASP.NET v4.0" for ASP.NET v4.
  5. Højreklik på den valgte programgruppe, og vælg "Avancerede indstillinger"
  6. Find den kategori, der kaldes "Indlæs model" i dialogboksen "Avancerede indstillinger". Den første række i kategorien være række "Id".
  7. Klik på række "Id", og klik derefter på den lille knap, der viser på højre side af celle værdi. Knappen viser teksten "?"
  8. En dialogboks, der kaldes "Application Pool Identity" bliver pop-up. Inden, i dialogboksen er der to alternativknapper. Kontroller, at den første alternativknap Internetudkastet "indbygget konto" er markeret.
  9. Vælg "Netværkstjeneste" for identiteten, i rullemenuen under knappen radio.
  10. Klik på "Ok" for at lukke ud i dialogboksen "Application Pool Identity".
  11. Klik på "Ok" for at lukke ud dialogboksen "Avancerede indstillinger".
  12. På dette tidspunkt vil ændringer til programgruppeidentiteten er blevet gemt til IIS 7.5 konfigurationslager.

 

Opløsning for Web Application projekter og websteder

Udføre følgende trin for webprojekter program (WAP) og websteder, der er placeret i en brugers dokumenter-mappe hosted under nogen version af IIS kører som NETWORK SERVICE:

  1. Først bekræfte, at IIS er blevet konfigureret til at køre som NETWORK SERVICE. Dette er standard på IIS6 og IIS7. Men hvis du kører på Windows 7 eller Windows Server 2008 R2 du først har brug for at følge fremgangsmåden ovenfor i "Resolution for Windows 7 og Windows Server 2008 R2" at gøre IIS programgrupper kører som NETWORK SERVICE.
  2. Skriv net stop iisadmin /y fra en kommandoprompt. Dette medfører, at eventuelle ASP.NET WAP programmer til lukning.
  3. Afslut af alle kørende forekomster i Visual Studio.
  4. NETWORK SERVICE skal være tildelt læsetilladelse til mappen på øverste niveau Visual Studio, der er placeret i din bruger dokumenter. Visual Studio-mappe har forskellige navne afhængigt af versionen: "Visual Studio 2005", "Visual Studio 2008" eller "Visual Studio 2010".
  5. NETWORK SERVICE skal tildeles begge læse og skrive tilladelser til dit projekt på øverste niveau projektmappe. For eksempel hvis projektet WAP kaldes "MyCustomWebProject", og derefter mappen "Documents\Visual Studio 20xx\Projects\MyCustomWebProject" skal have læse- og skriveadgang aktiveret for NETWORK SERVICE. Eller hvis projektet webiste kaldes "MyCustomWebProject", derefter mappen "Documents\Visual Studio 20xx\Websites\MyCustomWebProject" skal have læse og skriveadgang aktiveret for NETWORK SERVICE.
  6. NETWORK SERVICE skal tildeles, både læse- og skrivetilladelser til App_Data-mappen placeret inden for dit webprojekt mappestruktur.

 

Yderligere Information

Det anbefales, at de løsninger, der er beskrevet i denne artikel kun kan bruges til at fjerne blokeringen af berørte udvikling scenarier. Når implementering af programmer i produktion på nogen version af IIS, skal SQL Server Express Brugerforekomster ikke bruges.
 
Konfiguration af programgrupper på IIS 7.5 produktionen webservere skal bruge enten den nye programgruppeidentitet eller brugerdefinerede oprettede brugerkonti. Programgrupper på IIS 7.5 produktionen webservere bør ikke længere køre som NETWORK SERVICE.
 
Løsningen beskrives til arbejde med WAP projekter og websteder, der er placeret i en brugers dokumenter skal bruges som en midlertidig løsning. Fra en sikkerhed standpunkt er det ikke hensigtsmæssig NETWORK SERVICE har læseadgang til alle undermapper i mappen Visual Studio-projekter. Anbefales til at flytte IIS hosted WAP projekter og websteder til en anden placering, der er normalt tilgængelig til en IIS-tjenestekontoen (f.eks. under c:\inetpub\wwwroot).

 

Bemærk! Dette er en artikel til hurtig udgivelse, som er oprettet direkte i Microsofts supportafdeling. Oplysningerne i artiklen præsenteres som de og behandler aktuelle problemer. Fordi artiklen er blevet udgivet hurtigt, kan der forekomme slåfejl, og artiklen kan blive redigeret uden varsel. Se andre forbehold under Vilkår for anvendelse.

Egenskaber

Artikel-id: 2002980 - Seneste redigering: 27. oktober 2009 - Redigering: 2.0
Oplysningerne i denne artikel gælder:
  • Microsoft SQL Server 2008 Express
  • Microsoft Visual Studio 2008 Professional Edition
  • Microsoft Internet Information Services 6.0
  • Microsoft SQL Server 2005 Express Edition
  • Microsoft Internet Information Services 7.0
  • Microsoft Visual Studio 2005 Professional Edition
Nøgleord: 
kbrapidpub kbnomt KB2002980

Send feedback

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com