Jag är lite osäker inför lansering av vårt ASP.NET-projekt. Finns det något särskilt jag skall tänka på? Finns det kända säkerhetshål? Hela dotnet-plattformen känns ju väldigt genomtänkt, så det borde ju inte vara några större problem, men har ni stött på något trubbel med skarpa siter?
Säkerhet
11 svar · 330 visningar · startad av kristoffer
Se till att ha SP1 av .Net framework installerat.
Sen gäller förstås de vanliga reglerna för IIS:en om att du ska patcha och begränsa rättigheter etc. Många bra artiklar finns att nå från: http://support.microsoft.com/default.aspx?xmlid=fh%3BEN-US%3Biis50
Var beredd på att asp.net slutar fungera om du kört IIS lockdown tool (vilket ändå rekommenderas). Läs kb-artiklarna om visual studio.net som refereras i http://support.microsoft.com/default.aspx?scid=KB;EN-US;Q325864
Onödig kommentar kanske, men jag skulle absolut rekommendera att du provar detta på en ren maskin för att när det sedan fungerar applicera din kunskap på den skarpa siten.
Ett annat tips är att utnyttja CAS (code access security) som finns i .net., se http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguide/html/cpconintroductiontocodeaccesssecurity.asp
Börja med inga rättigheter alls för din kod. Behöver du exempelvis läsa från hårddisken på ett visst ställe kan du konfigurera det assemblyts rättigheter att göra det. Om du aldrig behöver läsa från hårddisken finns ingen anledning till att möjligheten ska finnas, isåfall kommer frameworket generera ett security-exception om man ändå försöker (pga exempelvis en bug i din kod som möjliggör detta).
CAS är dock ganska tungt att komma in i. Om du inte hållt på med det förut rekommenderar jag starkt att du gör ett testprogram (bara ett enkelt console-program). Sedan kan du försöka läsa från disken, och prova mscorcfg.msc eller caspol.exe för att sätta olika rättigheter i katalogen ditt testprogram körs. Jag tycker du ska lära dig det från grunden innan du börjar med det i dina skarpa siter. Det går att göra en säker site utan att bry sig om CAS, men det kan ändå vara värt att införa för att gardera sina egna misstag i programmeringen.
Det var bra tips. Tack för dem, nu har jag en hel del att sätta mig in i.
Nu när det ändå pratas rättigheter...
Vilka rättigheter måste eg. aspnet-användaren ha?
När vi skulle lägga ut aspx sidor på ett webhotell så var de tvugna att sätta fullständiga rättigheter på hela enheten för att det skulle fungera...
Fick annars ett felmeddelande om typ:
"Could not start monitoring directory-changes"
eller nåt...
Nån som vet?
Dessa inställningar behöver ett ASP.Net konto
fredrik, du tänker nog på: http://support.microsoft.com/default.aspx?scid=KB;EN-US;Q316721
Japp, det stämmer! Då ska det alltså räcka med access på själva web-sajten...har för mig att vi fick sätta det på hela enheten...men men, gjorde säkert nåt fel då!
Tack!
Rättelse, SP2 är det som gäller: http://www.microsoft.com/downloads/release.asp?ReleaseID=40934
Minsann. Den kom idag.
%temp% för att vara exakt :h