Toon posts:

[WEB] Opzet ASP.NET applicatie

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hoi,

momenteel hebben wij op het interne netwerk enkele SQL servers (SQL 2000 op Win2000 & Win2003) staan met verschillende DB's waaronder bv. een stockbeheer (om er maar eentje te noemen).

Nu is de vraag gekomen om de gegevens in de databases beschikbaar te maken naar externe klanten. Elke externe klant zou dus bep. rapporten moeten kunnen trekken gebaseerd op deze data (het gaat hem dus enkel over leesacties, géén bewerkingen ed.).

Concreet zijn onze programmeurs in staat om een ASP.NET applicatie te maken die deze data ophaalt en laat zien. Deze ASP.NET applicatie zal op een Win2003/IIS6 machine komen te draaien.

So far so good.

Nu kunnen we verschillende kanten uit betreffende de plaatsing van de webapplicatie (webservers dus).

- Intern (maw: we doen zelf de hosting & het beheer)
- Extern (extern bedrijf doet het beheer en wij huren webspace/bandwith).

Laat ons even de externe oplossing nemen.

De applicatie komt in dit geval te draaien bij een bedrijf die voor ons de hosting doet. Langs onze kant is dit een server die enkel bereikbaar is via Internet. Geen probleem, want meer dan onze applicatie installeren hierop in niet nodig. Security updates ed. gebeuren door het hosting bedrijf. Probleem echter: hoe laten we de applicatie accurate gegevens ophalen uit onze operationele SQL database die intern draait.
- Webserver rechtstreeks naar onze interne SQL Server laten connecteren over VPN lijkt me niet echt een betrouwbare (VPN verbinding eruit = applicatie onbruikbaar) & snelle oplossing (grote opvragingen zullen dan vrij lang duren).
- Een SQL Server bij het hosting bedrijf neerpoten waar we een kopie van de database opzetten is een mogelijkheid maar hoe houden we deze up-to date? Replicatie van de operationele database naar de database bij het hosting bedrijf over mail of ftp lijkt me niet betrouwbaar genoeg (asyncrone replicatie) Om SQL Replicatie via DTS te doen (syncrone replicatie) moet er volgens mij wederom een VPN tunnel worden opgebouwd van het interne netwerk naar het netwerkje bij de ISP. Deze laatste oplossing lijkt me doenbaar qua security & performantie. De gegevens zullen dan nooit 100% up-to date zijn (VPN dood = geen updates) maar de applicatie zal ten allen tijde aan zijn data kunnen.

Nadeel bij de externe oplossing: veel verkeer van je interne netwerk naar het hosting bedrijf (wat dus een dure grap wordt als je betaald per MB).


Stel we stellen heel het boeltje intern op:

De webservers komen dan bij ons op het bedrijf te draaien en vallen volledig onder ons beheer. Kunnen we weer enkele kanten op:

- We plaatsen webserver(s) in onze DMZ zone die de ASP.NET applicatie hosten. Deze webservers connecteren naar de interne SQL databases. De gegevens zijn altijd up-to-date aangezien ze uit de operationele databases komen. Geen gedoe met replicatie ed.
Nadeel: onveiligheid. Ook al zetten we dit op met SSL (wat me toch wel een minimumvereiste lijkt) dan nog staan er nog onveilige poorten open van de webservers (DMZ) naar het interne netwerk (SQL verkeer naar SQL servers, Authenticatie nr. AD, ...).
- We beveiligen bovenstaand wat extra door een ISA server in de DMZ zone te plaatsen. De Webservers zetten we of intern of in een tweede DMZ. Clients connecteren via HTTPS naar de ISA, en de ISA doet publishing van de ASP.NET applicatie (wederom over HTTPS) van de webservers. Voordeel is dat er slechts 1 poort openstaat van DMZ naar webservers (https).

Deze laatste oplossing lijkt me de beste om volgende redenen:
- Steeds up-to-date data aangezien de data uit de operationele databases komt
- Intern beheer (securitypatches, uptime, ...)

Nadelen waar ik kan opkomen
- Internetconnectie moet snel & betrouwbaar zijn
- Security aangaande hacking ed. wat als de ISA server gehacked wordt?

Wat denken jullie van bovenstaande mogelijkheden?

Alvast bedankt om dit toch wel lange verhaal te lezen... ;)

  • Taigu
  • Registratie: Februari 2002
  • Laatst online: 18-02 14:25
De laatste twee oplossingen spreken mij het meeste aan. Ik vraag me wel af of een tweede ISA niet wat overdreven is, afhankelijk van je budget kun je misschien net zo goed een "dikke firewall" met beproefde IDS/IDP functionaliteit aanschaffen.

Cling to truth and it turns into falsehood. Understand falsehood and it turns into truth.


Verwijderd

Topicstarter
Effe een kickje...

Zijn er nog gegadigden die hierover willen discussieren?

Verwijderd

Ongeacht welke oplossing je kiest, de verbinding van je kantoor naar "buiten" toe, moet altijd betrouwbaar zijn.
- Als je webserver colo'd plaatst, moet die machine naar je bedrijf toe connecten, anders geen data
- Als je webserver lokaal plaatst, moet de client naar je bedrijf toe connecten, anders geen data

Alleen als je ook een (replicated) SQL colo'd plaatst, kan het geheel doorwerken als je verbinding van kantoor naar colo er (even) uit valt, maar dan heb je risico op verouderde data, en kost behoorlijk wat MB's aan data.

Wat ook belangrijk is voor je overweging:
- hoeveel bezoekers van de website verwacht je (hoeveel datagebruik)
- hoeveel data van database moet heen en weer

Met betrekking tot DMZ. Een machine in de DMZ is gerechtigt om gaatjes in je firewall te prikken, daar is het geheel voor bedoeld. Wordt een ISA server gehacked, en kunnen onbevoegden op je interne netwerk komen, betwijfel ik of het feit dat je database dan exposed is je grootste probleem is.

Maar is er momenteel al een echte DMZ?