Wachtwoord vergeten?

Wachtwoord vergeten
Vul hier uw email adres in. U ontvangt dan een nieuw wachtwoord.

Programmatisch controleren op standaardisatieproblemen met ASP.NET

Gepost op 14-02-2007 - Microsoft Office - 0 reacties


De informatie in dit artikel is van toepassing op:

  • Microsoft ASP.NET 1.0
  • Microsoft ASP.NET 1.1
  • Microsoft .NET Framework 1.0
  • Microsoft .NET Framework 1.0 Service Pack 1
  • Microsoft .NET Framework 1.0 Service Pack 2
  • Microsoft .NET Framework 1.0 Service Pack 3
  • Microsoft .NET Framework 1.1
  • Microsoft .NET Framework 1.1 Service Pack 1

Inleiding

In dit artikel wordt beschreven hoe er beveiligingen kunnen worden toegevoegd aan een ASP.NET-toepassing als bescherming tegen veelvoorkomende standaardisatieproblemen.

Meer informatie

Wat is standaardisatie ('canonicalization')?

Standaardisatie is het proces waarbij verschillende gelijkwaardige vormen van een naam kunnen worden omgezet naar een enkele standaardnaam. De enkele standaardnaam wordt ook wel de 'canonical name' of alias genoemd. Zo kunnen op een bepaalde computer de namen c:\dir\test.dat, test.dat en ..\..\test.dat allemaal verwijzen naar hetzelfde bestand. Bij standaardisatie worden dergelijke namen toegewezen aan een naam die vergelijkbaar is met c:\dir\test.dat.

Wanneer een webserver een URL ontvangt, kent de server het verzoek toe aan een bestandssysteempad dat de reactie bepaalt. De standaardisatieroutine die wordt gebruikt om het verzoek toe te wijzen, moet de URL correct parseren om te voorkomen dat onverwachte inhoud wordt aangeboden of verwerkt. Ga naar de volgende Microsoft-website voor meer informatie over standaardisatie: U wordt aangeraden de aanbevolen procedures te hanteren ter bescherming van uw toepassingen. Bekijk de volgende sectie voor aanvullende informatie.

Uw webtoepassing voorzien van aanvullende standaardisatiebeveiligingen


Ontwikkelaars van Microsoft ASP.NET kunnen meer controles voor de vermindering van standaardisatieproblemen voor een webtoepassing inbouwen door een Application_BeginRequest-gebeurtenishandler toe te voegen aan het Global.asax-bestand dat is opgeslagen in de hoofdmap van de webtoepassing. Deze gebeurtenishandler wordt voor elk webverzoek uitgevoerd. U kunt in deze gebeurtenishandler code toevoegen als bescherming tegen standaardisatieproblemen.

Voorbeeld van code


De volgende voorbeelden van code laten zien hoe een Application_BeginRequest-gebeurtenishandler kan worden toegevoegd aan een Global.asax-bestand. De gebeurtenishandler helpt bij de bescherming tegen ongeldige tekens en misvormde URL's door padcontroles uit te voeren. Op deze manier kunt u veelvoorkomende standaardisatieproblemen voorkomen.

Voorbeeld van Global.asax-code (Visual Basic .NET)


<script language="vb" runat="server">Sub Application_BeginRequest(Sender as Object, E as EventArgs) If (Request.Path.IndexOf(chr(92)) >= 0 OR _ System.IO.Path.GetFullPath(Request.PhysicalPath) <> Request.PhysicalPath) then Throw New HttpException(404, "niet gevonden") End IfEnd Sub</script>

Voorbeeld van Global.asax-code ( C#)


<script language="C#" runat="server">void Application_BeginRequest(object source, EventArgs e) { if (Request.Path.IndexOf('\') >= 0 || System.IO.Path.GetFullPath(Request.PhysicalPath) != Request.PhysicalPath) { throw new HttpException(404, "niet gevonden"); }}</script>

Vrijwaring

De informatie die wordt geboden in de Microsoft Knowledge Base, wordt geleverd 'in de huidige staat' zonder enige garantie. Wij wijzen hierbij alle expliciete of impliciete garanties van de hand, met inbegrip van alle garanties betreffende de verhandelbaarheid en geschiktheid voor een bepaald doel. Voorzover maximaal is toegestaan op grond van toepasselijk recht zijn Microsoft Corporation en/of haar leveranciers in geen geval aansprakelijk voor enige directe, indirecte of incidentele schade, bijzondere schade, gevolgschade of schade ten gevolge van het verlies van winsten, zelfs als Microsoft Corporation of haar leveranciers van de mogelijkheid van dergelijke schade op de hoogte is gesteld. In sommige staten/rechtssystemen is uitsluiting of beperking van aansprakelijkheid voor gevolgschade of incidentele schade niet toegestaan. De voorgaande beperking is daarom wellicht niet op u van toepassing.

PrintPrint RSS reactiesRSS reacties BookmarkBookmark

Gekoppelde tags

ASP.net, .net, Procedure, Service Pack, Visual Basic

Reacties
Nog geen reacties geplaatst.

Winkelmandje

Het winkelmandje is leeg

Inloggen
Als u hierboven op de knop 'bestellen' klikt krijgt u een overzicht van de door uw gewenste producten. Indien het overzicht compleet en correct is kunt via de wizard de verdere gegevens invullen en uw bestelling afronden. In het bestelproces kunt u altijd op 'vorige' drukken om terug te gaan in het proces. Bij Perrit staan vertrouwen, privacy en veiligheid op de eerste plaats, wij zullen uw gegevens dan ook met uiterste zorgvuldigheid behandelen en nooit doorgeven aan derden.

Perrit.nl Sherwood Rangers 29 Hengelo

Perrit.nl telefoon: +31 74 750 12 20

Kenniscentrum - Programmatisch controleren op standaardisatieproblemen met ASP.NET
Perrit Kenniscentrum - Programmatisch controleren op standaardisatieproblemen met ASP.NET