Avatar billede speedpete Nybegynder
21. november 2005 - 13:03 Der er 21 kommentarer og
1 løsning

Kopiering af websted, 2.0

Jeg har et websted liggende i en mappe på en USB-stick. I webstedet indgår en SQLExpress-brugerdatabase (2.0's indbyggede Membership). USB-sticken er der, hvor jeg startede med at udvikle sitet, og altså den originale placering. Det virker fint, når jeg kører Visual Web Developers egen development server, OG når jeg kører via IIS med udgangspunkt i USB-sticken.

Problem: Jeg kopierer hele mappen fra USB-sticken over på harddisken (har prøvet både med C:/websted og C:/Inetpub/wwwroot), og jeg kan så også få det til at virke med development-serveren. Derimod vil IIS ikke være med til at logge brugerne ind (de andre dele af sitet, hvor man ikke skal logge ind, virker fint). Jeg har prøvet at slette SQL-databasen og oprette brugerne på ny, men får nedenstående fejl.

Summering:
- IIS peger på E:/websted/ (E er min USB-stick): Ingen problemer.
- IIS peger på C:/websted: Nedenstående fejl når man logger på:

**** KOPI AF FEJLMEDDELELSEN : ****

Cannot open user default database. Login failed.
Login failed for user 'PC233718582109\ASPNET'.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.Data.SqlClient.SqlException: Cannot open user default database. Login failed.
Login failed for user 'PC233718582109\ASPNET'.

Source Error:
An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.

Stack Trace:

[SqlException (0x80131904): Cannot open user default database. Login failed.
Login failed for user 'PC233718582109\ASPNET'.]
  System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection owningObject) +437
  System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection) +82
  System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory) +105
  System.Data.SqlClient.SqlConnection.Open() +111
  System.Web.DataAccess.SqlConnectionHolder.Open(HttpContext context, Boolean revertImpersonate) +84
  System.Web.DataAccess.SqlConnectionHelper.GetConnection(String connectionString, Boolean revertImpersonation) +197
  System.Web.Security.SqlMembershipProvider.GetPasswordWithFormat(String username, Boolean updateLastLoginActivityDate, Int32& status, String& password, Int32& passwordFormat, String& passwordSalt, Int32& failedPasswordAttemptCount, Int32& failedPasswordAnswerAttemptCount, Boolean& isApproved, DateTime& lastLoginDate, DateTime& lastActivityDate) +1121
  System.Web.Security.SqlMembershipProvider.CheckPassword(String username, String password, Boolean updateLastLoginActivityDate, Boolean failIfNotApproved, String& salt, Int32& passwordFormat) +105
  System.Web.Security.SqlMembershipProvider.CheckPassword(String username, String password, Boolean updateLastLoginActivityDate, Boolean failIfNotApproved) +42
  System.Web.Security.SqlMembershipProvider.ValidateUser(String username, String password) +83
  System.Web.UI.WebControls.Login.OnAuthenticate(AuthenticateEventArgs e) +160
  System.Web.UI.WebControls.Login.AttemptLogin() +105
  System.Web.UI.WebControls.Login.OnBubbleEvent(Object source, EventArgs e) +99
  System.Web.UI.Control.RaiseBubbleEvent(Object source, EventArgs args) +35
  System.Web.UI.WebControls.Button.OnCommand(CommandEventArgs e) +115
  System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) +163
  System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +7
  System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +11
  System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +33
  System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +5102


Version Information: Microsoft .NET Framework Version:2.0.50727.42; ASP.NET Version:2.0.50727.42
Avatar billede dr_chaos Nybegynder
21. november 2005 - 13:11 #1
har du registreret databasen med aspnet_regsql.exe ?
Avatar billede speedpete Nybegynder
22. november 2005 - 09:17 #3
Jeg har nu prøvet at registrere med aspnet_regsql.exe, men den vil ikke finde nogen databasefiler. Jeg tror heller ikke det nytter noget, hvis den gjorde:

Jeg har nemlig også læst posting'en du linker til, og det er ikke det problem jeg har. Mit problem er, at jeg ingen problemer har, når IIS peger på min USB-stick, men login-problemer når den peger på mit c-drev duer det ikke. ALt dette, vel at mærke, på den samme pc.

Selvom jeg, når jeg har lagt mit websted over på C:, sletter ASPNETDB.MDF og går ind i WAT og opretter brugere forfra i en frisk databasefil har jeg problemet med, at jeg ikke kan logge på gennem IIS.

Jeg har også prøvet at oprette et helt nyt websted på C:, her har jeg igen ingen problemer via development-server, men via IIS får jeg en validerings-fejlmeddelelse "Your login was not successful..."

Jeg skal måske lige tilføje at jeg bruger forms authentication.
Avatar billede dr_chaos Nybegynder
22. november 2005 - 09:20 #4
er du sikker på at du har sat rettighederne til aspnet brugeren på dit websted ?
Avatar billede speedpete Nybegynder
22. november 2005 - 09:39 #5
Nej, hvordan gør man det?
Avatar billede dr_chaos Nybegynder
22. november 2005 - 09:45 #6
højreklik på mappen og vælg egenskaber.
under sikkerhed fanebladet  trykker du på tilføj.
du skal nu finde brugeren aspnet.
den bruger skal du give fuld kontrol.
efter at du har trykket ok skal du trykke på avanceret og sætte har i
"erstat tilladelsesposter på alle underobjekter osv."
efter det trykker du anvend og prøver at logge ind igen.
Avatar billede speedpete Nybegynder
22. november 2005 - 09:51 #7
"højreklik på mappen" i IIS? Der er et faneblad der hedder Mappesikkerhed, men ikke Tilføj?
Avatar billede dr_chaos Nybegynder
22. november 2005 - 09:53 #8
det er ikke i IIS men på c:\websted mappen du skal trykke.
Avatar billede speedpete Nybegynder
22. november 2005 - 09:58 #9
Okay, der har jeg fanebladene Generelt, Deling, Webdeling, Tilpas. Ingen Sikkerhed.
Iøvrigt kan jeg ikke fjerne den grønne prik i Skrivebeskyttet. Den kommer igen når jeg viser egenskaberne igen.
Avatar billede dr_chaos Nybegynder
22. november 2005 - 10:09 #10
Avatar billede speedpete Nybegynder
22. november 2005 - 10:22 #11
:-) Skal du have nogen points? Nu virker det sørme...
Avatar billede dr_chaos Nybegynder
22. november 2005 - 10:24 #12
gerne :)
det var det med aspnet  brugeren ?
Avatar billede speedpete Nybegynder
22. november 2005 - 10:26 #13
Jep, det var det.
Avatar billede dr_chaos Nybegynder
22. november 2005 - 10:33 #14
k tænkte det nok har selv haft de samme problemer.
Dog bør du som standard kun give aspnet brugeren læse rettigheder.
Avatar billede speedpete Nybegynder
22. november 2005 - 10:40 #15
Okay, hvorfor det?
Avatar billede dr_chaos Nybegynder
22. november 2005 - 10:43 #16
det er fordi at asp.net applicationer afvikles under aspnet brugeren på xp.
på windows 2003 er det under en bruger som hedder network service.
Avatar billede speedpete Nybegynder
22. november 2005 - 10:52 #17
Det forstod jeg ikke meget af. Men er der sikkerhedsproblemer med at give fuld kontrol til aspnet?
Avatar billede dr_chaos Nybegynder
22. november 2005 - 10:59 #18
ja. det kan føre til misbrug af de mapper som webstedet ligger i.
du kan læse om aspnet brugeren her:
www.mvps.org/marksxp/WindowsXP/aspdot.php+what+is++aspnet+user&hl=da" target="_blank">http://66.249.93.104/search?q=cache:l-bVN4kUk4IJ:www.mvps.org/marksxp/WindowsXP/aspdot.php+what+is++aspnet+user&hl=da
Avatar billede speedpete Nybegynder
22. november 2005 - 11:13 #19
Ok, men hvis jeg kun giver læserettigheder til aspnet, så virker logon ikke?
Avatar billede dr_chaos Nybegynder
22. november 2005 - 11:19 #20
så prøv med skrivning også.
du skal kun øge tilladelserne lidt ad gangen.
Avatar billede speedpete Nybegynder
22. november 2005 - 11:23 #21
ok, det virker med læsning og skrivning.
Avatar billede dr_chaos Nybegynder
22. november 2005 - 11:25 #22
ok fint nok.
Man skal altid forsøge kun at give tilladelse til det der er nødvendigt.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester