28. juni 2010 - 21:29Der er
13 kommentarer og 1 løsning
WCF service bag firewall udstillet til en specific tredje part
Til de WCF stærke...
Jeg har lavet masser af WCF services, der fint har været hosted bag en firewall, hvortil vores webapps tilgår denne WCF service. Alle vores webapps ligger på ydersiden af firewall'en i DMZ.
Vi har nu en tredje part, der er interesseret i at bruge vores WCF service. Hvordan udstiller vi den til den tredje part, således kun de kan tilgå vores WCF service. Evt. låse for kun specifikke IP adresser kan tilgå servicen...
Der må være masser af forskellige måder at gøre det på:
1) put en regel i jeres firewall som kun tillader adgang til visse URL'er fra visse IP addresser
2) put servicen i en separat web app og konfigurer IIS til kun at tillade adgang fra visse IP adresser (jeg ved faktisk ikke hvordan man gør det i IIS, men jeg er ret sikke rpå at man kan)
3) konfigurer et HttpModule som tester alle requests for URL og IP adresse
4) lad selve service koden fiske IP adressed ud med HttpContext.Current.Request.UserHostAddress og give fejl hvis den ikke matcher
Et sidste spørgsmål. Udstilling af vores WCF skulle gerne være nem at tilgå. Det burde være muligt at sætte noget DNS op, så det er den adresse den tredje part hooker sig på, som så resolver til den interne IP. Eller hvordan er det bedst? :)
ASP.NET bruger en port paa den server hvor servicen koerer.
Den ydre firewall forwarder en port som kan vaere den samme eller en anden til den.
Detaljerne kan dog godt vaere lidt anderledes.
ydre port X----firewall----indre port Y----service | port 80 | DMZ web app
er den simple model. Firewall forwarder ekstern trafik til port X til den indre port Y.
ydre port X----firewall 1----DMZ port Y----firewall 2----indre port Z----service | port 80 | DMZ web app
Firewall 1 forwarder ekstern trafik til port X til firewall 2 port Y. Firewall 2 forwarder trafik til port Y til den indre port Z.
proxy server i DMZ | port W | ydre port X----firewall 1----DMZ port Y----firewall 2----indre port Z----service | port 80 | DMZ web app
Firewall 1 forwarder ekstern trafik til port X til proxy server port W. Proxy server forwarder trafik til firewall 2 port Y. Firewall 2 forwarder trafik til port Y til den indre port Z.
Kompleksitet og sikkerhed stiger naar du gaar nedad.
Men dette her er ikke noget som software skal designe.
Det her er noget som netvaerks og sikkerhedsfolkene skal designe.
tak for hjælpen...er lige kommet tilbage fra ferie i udlandet...derfor den sene respons.
Synes godt om
Ny brugerNybegynder
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.