Meyers borgerportal og web services

Borgerportalen skal lages av aktører som helt sikkert vil gjøre web services til et viktig element i løsningen.

(Administrerende direktør Arild Haraldsen i NorStella bidrar jevnlig med kommentarartikler i digi.no)

Oppdraget for å utvikle Borgerportalen er gitt til aktører som helt sikkert vil sørge for at Web Services blir et viktig element i løsningen.

Det sies at web services oppsto da Bill Gates i 1999 lanserte BizTalk på en pressekonferanse i San Francisco. Dette var et svar på det å bruke Internett-teknologi til koble sammen ulike typer programvare, uavhengig av plattform eller programmeringsspråk. Flere leverandører fulgte etter, som Sun, IBM og Oracle, og en rekke andre. Grunnlaget er på mange måter XML (Extensible Markup Language) som ble utviklet av Tim Bray fra Sun i midten av 1990-årene.

Ingen eier noen av disse teknologiene, og de blir utviklet av W3C (World Wide Consortium). under ledelse av Tim Berners-Lee. W3C er nå drøyt 10 år gammel.

W3C utarbeider ikke standarder i tradisjonell forstand. De lager anbefalinger («recommendations»). Utgangspunktet er alltid at noen melder et behov for en standard. Det nedsettes en arbeidsgruppe, og den begynner med å finne hvilke behov denne nye standarden skal dekke. Vanligvis skjer dette i form av en åpen forespørsel om behov («Request for requirements»). Når behovene er kartlagt, begynner arbeidet med å definere standarden. Sentralt her sitter fortsatt en arbeidsgruppe som i en åpen prosess utvikler et utkast («draft»). Dette utkastet blir lagt ut til en åpen høring. Det vil da være en rekke med utkast som etter høringene får status som en foreslått anbefaling («proposed recommendation»), eller kandidatanbefaling («candidate recommendation») og til slutt ende som anbefaling («recommendation»). En forutsetning for å få status som en anbefaling, er at det er programvare som støtter den. Dette siste sikrer at det ikke ender med en papirstandard som ikke lar seg realisere.

Flere standarder innenfor Web Services er utviklet de senere årene. Her er noen av dem:

I fjor høst ble Web Services Choreography Description Language 1.0lagt fram til høring. Dette er et XML-språk for å beskrive en samhandling mellom parter. Denne beskrivelsen skal være plattformuavhengig, interoperabel og stabil over tid. Dette skal være en bro mellom heterogene systemer, og skal sikre at ulike tjenester kan samarbeide over tid. Denne spesifikasjonen baserer seg på følgende andre spesifikasjoner: XML 1.0, XML-Namespaces, XML Schema 1.0, XPath 1.0 samt deler av WSDL 2.0.

De ulike lagene i en WS begynner dermed å falle på plass. I tillegg til WS-CDL har vi følgende:

  • SOAP (Simple Objects Access Protocol) – en slags virtuell konvolutt som forteller hva meldingen inneholder og hvor den skal sendes.

  • WDSL (Web Services Definition Language) er et programprodukt som tillater mange slags programvare å kommunisere direkte med hverandre. WSDL beskriver protokoller og grensesnitt i en web service.

  • UDDI (Universal Description, Discovery and Integration) er byggesteinen som gjør det mulig å finne og identifisere tjenester på nettet.

  • Sikkerhetslaget skal sørge for at meldinger ikke kan endres eller forfalskes. Dette vil basere seg på bruk av XML Signature, XML Encryption og eventuelt andre mekanismer som HTTPS eller S/MIME.
  • Pålitelighet er mekanismer som sikrer en og kun en sikker levering av en melding. Her er det naturlig å se for ulike former for kvitteringsmeldinger.

I løpet av våren er nye elementer kommet på plass. Et av dem er Web Services Addressing 1.0 (WSA). Denne standarden gjør det mulig å identifisere tjenester og meldinger i en WS uavhengig av de transportprotokoller som benyttes. Denne identifisering er primært beregnet på opprinnelig avsender og endelig mottaker av meldingen i en WS. Dette realiseres ved å definere et sett XML komponenter.

SOAP er «konvolutten» som er en nødvendig del av en melding i en WS. Derfor er det er utviklet et støttedokument til standarden som heter «Web Services Addressing 1.0 SOAP Binding». Innholdet her er en beskrivelse av hvordan WSA er tenkt benyttet i en SOAP melding. Et tredje dokument er «Web Services Addressing 1.0 WSDL Binding» som er en anvisning av hvordan en kan definere bruken av WSA i WSDL.

Noen av de viktigste WSA-mekanismer er:

  • Definering av en unik identifikator for en melding. Denne identifikatoren er påkrevet om en ønsker svar på meldingen, eller eventuell feilmelding.
  • Hvilken eller hvilke andre meldinger denne relaterer seg til. En kan her knytte denne meldingen til tidligere meldinger som er utvekslet mellom partene. Dette er påkrevet om denne meldingen er et svar på en melding. Dette gjelder også feilmelding.
  • Identifisere endelig mottaker av meldingen.
  • Hvilken prosess som meldingen ønsker å initiere hos mottaker. Ved bruk av WSA er påkrevet å identifisere ønsket handling.
  • Identifisere opprinnelig avsender av meldingen.
  • Identifisere mottaker av svarmelding. Dette er påkrevet om det forventes svar på meldingen.
  • Identifisere mottaker av feilmelding. Dette er påkrevet om det forventes feilmeldinger.

Ifølge undersøkelser mener de fleste IT-sjefer i Norge at XML og Web Services vil bli de to teknologiene som får størst betydning i årene fremover. En rekke bedrifter har i dag også vellykkede implementeringer av Web Services, så som Norwegian, Color Line, Tomra og NorEngros. Altinn og Enhetsregisteret i Brønnøysundregistrene benytter dette i økende utstrekning – noe som igjen setter krav til bedrifter som rapporterer inn til disse to registrene. Og sentrale IT-aktører som Microsoft, Sun, IBM og Oracle støtter denne utviklingen.

Men det betyr ikke at dette er leverandørspesifikk teknologi. Tvert om er kravet fra W3C at de skal oppfylle de fire sentrale kravene til hva en åpen standard er:

  1. Den tekniske utviklingsprosess skal være åpen og tilgjengelig for enhver
  2. Den tekniske spesifikasjon skal være så fullstendig at den sikrer full interoperabilitet; implementeringen skal ikke kreve leverandørspesifikk teknologi eller metode
  3. Spesifiikasjonen skal ha tilslutning fra en bred gruppe av aktører. Utvidelser/endringer skal være åpent erkjent, og skal gjennomføres på en måte som ikke undergraver prinsippet om interoperabilitet
  4. Tilgang til den ferdige standard skal være gratis eller ha så lave kostnader at alle skal kunne få fri og ikke-diskriminerende adgang til produktet. Tilgangen skal ikke hindres av patentrettigheter eller copyright.

(NorStella er et nasjonalt kompetansesenter for åpne standarder, og følger utviklingen innen WS nøye både gjennom W3C, Oasis og UN/CEFACT. Grunnlaget for denne artikkelen er den oppfølging NorStella gjør gjennom samarbeidspartnere. Jeg er Bjørn Sundberg, Color Line, takknemlig for informasjon og tips om dette temaet. 9. juni arrangerer NorStella sammen med Dataforeningen et web services-seminar i Oslo. Der vil særlig norske brukererfaringer bli belyst).

    Les også:

Til toppen