Avatar billede korup Nybegynder
22. april 2003 - 16:48 Der er 17 kommentarer og
1 løsning

System.UnauthorizedAccessException: Adgang nægtet

Hej Alle i eksperter.
Jeg får denne fejl når jeg prøver at bruge nogle metoder fra en DLL som jeg har importeret.
Jeg har i min "machine.config" Sat user til "system".
Og er logget ind som administrator.
Er der nogle der har gode forslag til hvordan man klarer den..
Jeg har på fornemmelsen at der er noget administrativt, men hvad?

-----------------------------------------------------------
Adgang nægtet.
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.UnauthorizedAccessException: Adgang nægtet.

The ASP.NET process is not authorized to access the requested resource. For security reasons the default ASP.NET process identity is '{machinename}\ASPNET', which has limited privileges. Consider granting access rights to the resource to the ASP.NET process identity.

To grant ASP.NET write access to a file, right-click the file in Explorer, choose "Properties" and select the Security tab. Click "Add" to add the "{machinename}\ASPNET" user. Highlight the ASP.NET account, and check the Write box in the Allow column.

-----------------------------------------------------------

Håber der er nogle kloge hoveder der kan klare den.

/korup
Avatar billede odegaard Nybegynder
22. april 2003 - 16:54 #1
Det er vist ikke nødvendigt. ASP.NET fortolkeren siger jo hvad du skal gøre:
To grant ASP.NET write access to a file, right-click the file in Explorer, choose "Properties" and select the Security tab. Click "Add" to add the "{machinename}\ASPNET" user. Highlight the ASP.NET account, and check the Write box in the Allow column.

Det skyldes at du sikkert forsøger at skrive eller læse filer som ASP.NET ikke har lov til at få adgang til. Dette er blot en sikkerhedsfunktion i ASP.NET som du skal være glad for.
Avatar billede clausjul Nybegynder
22. april 2003 - 16:55 #2
Det er fordi ASP.Net ikke findes som en bruger. Du skal oprette en bruger, som hedder <MASKINENAVN>\ASPNET og give den rettigheder. Så er du kørende.
Avatar billede odegaard Nybegynder
22. april 2003 - 17:15 #3
ClausJul: Jo brugeren er oprettet. Ellers ville man slet ikke kom så langt. Problemet er blot at computernavn\ASPNET ikke har skriverettighed.
Avatar billede clausjul Nybegynder
22. april 2003 - 17:16 #4
Så skal du netop følge vejledningen i fejlmeddelelsen. Du kan vælge en mappe og give den læse/skrive rettighed - og mappen kan være c:\inetpub\wwwroot (standard opsætning i IIS)
Avatar billede burningice Nybegynder
22. april 2003 - 17:40 #5
odegaard & clausjul>> det kan også være at han ikke forstår engelsk, og gerne vil have det oversat?!

ASP.Net processen har ikke adgang til resourcen. Af sikkerhedsgrunde er standards Asp.Net brugeren {maskinnavn}\ASPNET, som har begrænsede rettigheder. Overvej at give de fornødne rettigheder på resourcen til Asp.Net brugeren.

For at give Asp.net skriveadgang til en fil, højreklik på filen i Explorer, vælg Egenskaber og så Sikkerheds-fanebladet. Klik på tilføj for at tilføje {maskinnavn}\ASPNET-brugeren. Marker Asp.net kontoen, og kryds Skriv-boksen af i Rettigheder-kulonnen.
Avatar billede simon.ulsnes Nybegynder
22. april 2003 - 17:58 #6
Tillad mig at komme med en kynisk bemærkning: At tro at man kan lære at programmere (eller noget som helst andet ud over almindelig, simpel brug af computere) uden at kunne engelsk er rimelig optimistisk, for ikke at sige tæt på umuligt...
Avatar billede odegaard Nybegynder
22. april 2003 - 18:07 #7
...det kan ihvertfald komme til at koste en masse point her, hvis man skal have oversat samtlige fejlmeddelelser fra debuggeren :-)
Avatar billede burningice Nybegynder
22. april 2003 - 20:18 #8
simon.ulsnes & odegaard>> ironi er dejligt ;)
Avatar billede korup Nybegynder
22. april 2003 - 20:21 #9
Takker for de spydige bemærkninger.

Men jeg har prøvet at give ASPNET brugeren flere rettighedder, til at bruge læse og skrive til de DLL filer, som jeg prøver at benytte. men det hjælper ikke.

Kan det have noget at sige at jeg sidder logget på et domain?
Det er vel stadig den lokale ASPNET bruger der skal have rettighederne?

Og jeg kan god engelsk.

Så skal jeg stadig bare gå ind og give filen retigheder til at ASPNET brugeren..

/korup :)
Avatar billede odegaard Nybegynder
22. april 2003 - 20:22 #10
Det er jo ikke DLL-filen der skal have skriverettigheder. Det er de(n) fil(er) som DLL'en forsøger at skrive til/læse fra !
Avatar billede korup Nybegynder
22. april 2003 - 20:29 #11
Hvis nu min DLL prøver at tilgå en database over et netværk hvilken fil skal jeg så give retigheder?
Er det ikke muligt at bruge den bruger som er logget ind. at bruge hans retigheder i stedet for ASPNET?
Det ville jo gøre det lettere for det virker fint som en Aplikation. :)

/korup
Avatar billede burningice Nybegynder
22. april 2003 - 20:43 #12
korup>> når du kører siden som asp.net, så er det ET og kun ET program, som afvikler alle siderne for dig. Programmet hedder aspnetworker, og bliver kørt af brugeren ASPNET af sikkerhedsmæssige grunde. Hver hjemmeside starter altså ikke sit eget program, på samme måde som du kører 10 forskellige exe-filer. aspnetworker kører heller ikke under den bruger som er logget ind.. for hvad nu hvis der ikke er noget bruger der er logget ind? ELler hvis det nu er admin... så kan der ske grimme ting.
Det betyder, at hvis du har en dll som tilgår en database, som bliver brugt på en hjemmeside, så er det ASPNET-brugeren som skal have adgang, til at LÆSE din aspx-side, og dine dll'er. For at tilgå en database er det dog ikke nok at kunne LÆSE den, brugeren skal også have adgang til at ÆNDRE i den.

Håber at denne lidt rodede forklaring kunne kaste lys over lidt af hvert.
Avatar billede odegaard Nybegynder
22. april 2003 - 21:46 #13
Er du helt sikker på at det er DLL'en der er problemet?
Avatar billede korup Nybegynder
22. april 2003 - 22:50 #14
odegaard>> Jeg er ikke sikker på det er min DLL der er problemet. Jeg tror nærmere at det er det som DLL prøver på at gører der er problemet.

cyberfessor>> Læker forklaring, åbnede ikke nogle dører men en god forklaring på hvordan ASPNET afvikles.

Jeg har nu prøvet at lave det i ALM ASP, og her er der ikke nogle problemer, er det fordi at det afvikles af systemet?

/korup
Avatar billede odegaard Nybegynder
22. april 2003 - 23:05 #15
ASP afvikles ikke med samme gode sikkerhed, så det kan du ikke regne med.
Mht. om det er din DLL der er problemet, så er det nu også det jeg mener. Dvs. det som DLL'en forsøger, der er skyld i problemet. Jeg tror efterhånden det er ved at være på tide at du kommer med noget kode hvis vi skal hjælpe dig.
Jeg kan med 99.99999% sikkerhed sige at du har fået løsningen præsenteret. Hvilke resourcer det så er som du skal give ASPNET-brugeren adgang til må du kunne finde andetsteds.
Avatar billede burningice Nybegynder
22. april 2003 - 23:40 #16
korup & odegaard>> ASP afvikles af IUSR-account'en... den bruger har som regel fuld adgang til wwwroot-mappen, så der plejer aldrig at være de store problemer. Måske med lidt databaser i ny og næ. Med ASP.Net er der kommer eny bruger man skal tage højde for, og det glemmer folk alt for ofte. Den skal som tommelfingerregel have de samme rettigheder som IUSR'eren, så skulle der ikke være nogen slinger i valsen :)

Men odegaard har nok ret. Det virker til at din dll indeholder nogle metode, som tilgår nogle resourcer der ikke er de fornødne rettigheder til.
Avatar billede korup Nybegynder
28. april 2003 - 16:05 #17
Har ikke fundet problemet.

Lukker spørgsmål!!

/kroup
Avatar billede burningice Nybegynder
28. april 2003 - 16:45 #18
korup>> hvorfor kunne du dog ikke bare vise os noget kode?
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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