Webapplikasjoner øker i popularitet og gjør på mange vis verden enklere. På grunn av den innebygde sikkerhetsmodellen i browsere, kan imidlertid integrasjon av data fra forskjellige datakilder være en utfordring. NetScaler tilbyr en løsning hvor man kan integrere data fra forskjellige kilder, uten å kompromittere sikkerhetsmodellen.
Problemstillingen kan illustreres med fiktive applikasjoner:
Du har 3 isolerte systemer som i dag kun kommuniserer med hverandre via BizTalk Integrasjoner:
- hotell.kjede.no
- mat.kjede.no
- reise.kjede.no
Utviklerne dine holder seg oppdatert og har gjort applikasjonene om til HTML5. Videre har de utviklet flere webservices for tjenestene som finnes på systemene. Du ønsker å implementere en kundeportal hvor brukere kan bruke pc, mobil og nettbrett til å aksessere en felles frontend for de tre applikasjonene. Du begynner å lage applikasjon 4, portal.kjede.no Når utviklerne begynner på integrasjon kommer de over endel nye utfordringer de ikke har måtte forholde seg til tidligere.
- På grunn av sikkerhetsmodellen til nettlesere er hver enkelt applikasjon en egen øy. Derfor er det mulig å ha www.vg.no oppe samtidig som du har nettbanken oppe i en annen fane. Du kan gjøre “kall” til begge men du kan ikke laste data over fra “vg.no” fanen din til “nettbank” fanen din. Samme problem må man forholde seg til når man utvikler en felles applikasjon som henter data fra flere kilder via HTTP. Man begrenses av mekanismer i nettleseren som beskytter mot cross site script security, cross site request forgery, cookie domains osv.
- Du oppdager at selv om man logger på via “SSO” så får man uansett en gresk “kinobilett” tilbake av web servere. Når du så skal sjekke at “Anders” med billett 445632 og “Kai” med billett 83452 ikke skal ha lov til å gjøre x eller y uten at det er noen relasjon mellom billett og person. eneste garanti er at den er unik.. finner du ut at integrasjon mellom flere webapplikasjoner med tilhørende bruker bytter kan resultere i en bøtteballett av session cookies som må håndteres (les billetter)
Med Netscaler presenterer vi disse problemstillingene ved at vi håndterer “cookies” i applikasjoner samt at vi presenterer de forskjellige applikasjonene under en felles paraply som muliggjør interaksjon mellom komponentene.
Effekten av dette med, eksempel Neptune i SAP miljø:
Opprinnelig uten Netscaler:
Når man gjøre integrasjon fra Neptune mot SAP Portal og skal bruke applikasjonen på forskjellige enheter oppstår utfordringer:
1: ajax-kall mellom to applikasjonsdomener
2: Applikasjonen klarer ikke å skille session cookie for annet cookiedomene enn eget
- Nettbrett:
Her måtte man kjøre en plugin til nettleseren som gjør at Neptune applikasjonen tvinges til å kjøre i en egen “sandbox” eller process space i browser. Denne plugin modifiserer data, sletter cookies og gjør at nettleseren ignorerer sine egne sikkerhetsmekanismer for applikasjonen i denne process space. - På PC:
Skal man bruke Neptune med SAP Portal integrasjon på en PC så må man starte nettleseren med “–disable-websecurity” parameter
Med Netscaler:
Netscaler Terminerer Applikasjonen og skriver om html data for brukeren uten å lage noen sikkerhetshull. Netscaler dreper session cookies på tvers av applikasjonsdomener.
- Nettbrett:
Man trenger ingen plugin på nettleser. Man er ikke bundet til Internet Explorer. Kunde migrerer til Chrome Webkit og opplever stor ytelsesforbedring som ett resultat av å være ordentlig “html 5” kompatibel - På PC
Kjører som en normal applikasjon uten å bryte nettleserens egne sikkerhetsmekanismer