Dags för en liten arkitekturdiskussion! "De asp.net-system jag byggt har alltid haft applikationskomponenterna liggande på samma server. Och det är inte en säker lösning för en server som kommer att stå i ett DMZ. " Jag vill ha accesskontrollen i affärslagret, eftersom det ger mig möjlighet att ha en accesskontroll på entitetsnivå ( i motsats till t.ex. sidnivå i ASP). Om en hacker kommer igenom den första delen av din brandvägg och kan börja jobba från din IIS-Server så har du större problem att ta hand om än hurvuda porten för distribution eller porten för db accss är öppen i den sista brandväggen. Smidigt, Säkert och Snabbt
Jag har ett projekt på G. Det ska vara en asp.net-lösning som skall gå att nå inne på ett företag samt från internet.
Jag har utvecklat en hel del under .Net, och har rätt bra koll på vad som krävs för att få bra säkerhet i ett publikt (internet) system, men jag inser nu att jag inte har gjort något som är både och.
De internetsystem jag gjort har varit gammal ASP, som över DCOM har pratat med ett applikationslager på insidan om brandväggen. DCOM har konfats till att använda ett fåtal portar och dessa har öppnats i brandväggen.
De asp.net-system jag byggt har alltid haft applikationskomponenterna liggande på samma server. Och det är inte en säker lösning för en server som kommer att stå i ett DMZ.
Så, frågan lyder:
Hur tycker ni att man ska designa ett sånt här system 2006?
1. En webbserver i DMZ som anropar applikationslagret över Remoting?
2. En webbserver i DMZ som anropar applikationslagret med Web Services?
3. En Reverse Proxy i DMZ som anropar en intern webbserver med applikationslagret på samma maskin?
4. Något annat?
Om (1), hur gör ni för att utveckling, test och deployment skall gå smidigt? Jag tyckter inte det finns några direkta adminverktyg motsvarande Component Services. Man kan ju iofs använda CS även för Remoting, är det någon av er som gör det?
(2) är ju rätt smidigt, både att utveckla för och deploya, men prestandan blir ju inget att hurra för, eller?
/GöranSv: Smidigt, Säkert och Snabbt
Vad baserar du det här på? Det finns inget direkt säkerhetsvärde i att jobba distribuerat med affärslagret, däremot introducerar du fler möjliga problem med säkerhetsbetoning.Sv:Smidigt, Säkert och Snabbt
Om man har affärslagret på samma server, måste man ha en ODBC-öppning i brandväggen in till databasen (för du vill väl inte ha den också i DMZ!?!?). Därigemom finns en liten, men ändå, risk att någon kan förbigå accesskontrollen och peta direkt i databasen.
Vilka fler möjliga problem med säkerhetsbetoning menar du introduceras om man delar på webbsidor och affärslager?Sv: Smidigt, Säkert och Snabbt
Det blir inte säkrare för att du lägger på ytterligare en komplexitetsnivå, snarare tvärtom. Ju komplexare system, desto större attackyta.