Bakom kulisserna. SMHI webservices. Infrastruktur och säkerhetslösningar Demonstration av webservices



Relevanta dokument
vattenweb.smhi.se Esa Falkenroth, SMHI Molntjänster för GIS, Stockholm

Att använda Metria Maps WMS baserad på Geoserver

2I1070 Lektion 2 Servlets och databaskopplingar Internetprogrammering 2I1049 Treskiktsarkitektur Klient-server med servlets

Sustainable engineering and design. Prestanda i karttjänster

SGU. Jonas Holmberg

Webbteknik II. Föreläsning 4. Watching the river flow. John Häggerud, 2011

LUFTKVALITET WMS. Miljöförvaltningen, Johan Sylvén

Sokigo AB OVK 2.0. Pentium- eller AMD-processor (x64 processor) på 1,6 GHz Dual Core eller motsvarande.

Stockholm Open Award 2014 Meet Up 26 mars Trafik och framkomlighet

Laboration 10 - NetBeans

Datum: Version: Författare: Christina Danielsson Senast ändrad:

Laboration 10 - Eclipse

XML-produkter. -Registret över verkliga huvudmän (RVH) Teknisk handledning för webbtjänst mot RVH (Web Services) Datum: Version: 1.

Webbservrar, severskript & webbproduktion

Testdriven utveckling av Web Services. Ole Matzura

moln Martin Davidson, Metria Danfilip Lundberg, Ljungby kommun MätKart 2012

Version Namn Datum Beskrivning 1.0 Förutsättningar Vitec Ekonomi 1.1 Marie Justering för krav på Windows Server

TRAFIKBULLER WMS. Miljöförvaltningen, Johan Sylvén

Pascal tillämpningsanvisning Anrop av Pascal via uthopp från annan applikation

1 Systemkrav avantraupphandling

GEOSECMA - SYSTEMÖVERGRIPANDE...

Laboration 2 RESTful webb-api

Innehåll. Dokumentet gäller från och med version

Introduktion Schenker-BTL AB, Stab IT Beskrivning över informationsintegreringmed Schenker, metodbeskrivning version 1.

RDT Externt Webbtjänst Gränssnitt

Teknisk kravspecifikation för nytt Omsorgs system

Opensource och WMS på SGU. Jonas Holmberg & Johan Olsson

Hå rd- och mjukvårukråv såmt rekommendåtioner fo r 3L Pro from version 2013.Q2

Webbteknik II. Föreläsning 5. Restless farewell. John Häggerud, 2011

Postens GIS-miljö och Open Source 9/3 2010

RDT Externt Webbtjänst Gränssnitt

DB, DATA, LOGIC, EXPOSURE (WEB)

1ME323 Webbteknik 3 Lektion 6 API. Rune Körnefors. Medieteknik Rune Körnefors

Säkerhet och förtroende

Hå rd- och mjukvårukråv såmt rekommendåtioner fo r 3L Pro from version 2013.Q3

Objektorienterad programmering E. Telefonboken, än en gång. Gränssnitt. Telefonboken med gränssnitt specificerat, del 1.

Mobilt Efos och ny metod för stark autentisering

Hå rd- och mjukvårukråv såmt rekommendåtioner fo r 3L Pro from version 2015.Q1

GIS-strategi. för Nybro kommun. GIS-samordnare Lise Svensson. Antagen av kommunfullmäktige

Finns SSO på riktigt?

Systemkrav. Artvise Kundtjänst

Elisabet Stöök Konsult SAS Institute AB Copyright 2003, SAS Institute Inc. All rights reserved.

Användande av QGIS i Kristianstads kommun

Översikt. Installation av EasyPHP 1. Ladda ner från Jag använder Release Installera EasyPHP.

GIS-strategi. för Nybro kommun. Antagen av Kommunstyrelsen Årlig genomgång av dokumentets aktualitet och vid behov revidering

Formulärflöden (utkast)

Konfigurering av inloggning via Active Directory

Utredningsrapport Gemensam bokningsplattform och anläggningsregister för Umeå regionen.

Arkitektur för Bistånd

Internationalisering/lokalisering på webben

Vad är molnet? Vad är NAV i molnet? Vem passar NAV i molnet för? Fördelar med NAV i molnet Kom igång snabbt...

TDP003 Projekt: Egna datormiljön

Sokigo AB Ecos Pentium- eller AMD-processor (x64 processor) på 1,6 GHz Dual Core eller motsvarande.

Opensource och SGUs webbplattform. Anette Lundberg & Jonas Holmberg

SQUID. och andra cachelösningar

Services + REST och OAuth

Generell säkerhet. Loggning - Hur mycket ska man logga? Inloggningsrutinerna i Unix. Loggning fortsättning

GIS och SGU. Jonas Holmberg & Johan Olsson

Administrera ArcGIS for Server. Erik Bruhn Johnny Björk

Introduktion till integrering av Schenkers e-tjänster. Version 2.0

1 Infrastruktur för RTJP RTJP är placerad i en virtuell miljö som i brist på bättre namn går under benämningen MVK-molnet

KUNDREGISTER Sid 2(7) Teknisk specifikation

Mobilt Efos och ny metod för stark autentisering

När geografisk information blir allas egendom

Systemkrav och tekniska förutsättningar

Data Sheet - Secure Remote Access

Federerad Roll Administration ÄR GROUPER EN MEDSPELARE? OVE OLANDER MITTUNIVERSITETET

Outsourcad lagring och drift. Ljungby kommun

Teknisk målbild. Skola på webben

Guide till Inera IdP. Information angående anslutning av Nationella e-tjänster

EBITS Totalförsvarets Forskningsinstitut David Lindahl Erik Westring

INSTALLATION AV KLIENT

Java: Utvecklingsverktyg, datatyper, kontrollstrukturer

Giltig från Version Nr 1.2

ELF Basemap Visning v1.0 - teknisk beskrivning 1.6.7

SAS USER FORUM SWEDEN 2017 USER FORUM. SAS Viya och öppenhet en gemomgång av LUA-, Java-, Python- och REST-gränssnitten mot SAS Viya

SURFTOWNS SÄKERHETSMILJÖ. Databehandlingsavtal - Bilaga 1

Varningssystem byggt på öppna källkodskomponenter Magnus Runesson SMHI

Alla rättigheter till materialet reserverade Easec

Webbtjänster med API er

Undervisningen i ämnet webbutveckling ska ge eleverna förutsättningar att utveckla följande:

Mobilt Efos och ny metod för stark autentisering

Lantmäteriets WMS En presentation av de olika komponenterna i plattformen och hur öppen källkod påverkar vår arbetsmetodik

Bas - Utvecklingsstöd

Tentamen Nätverksprogrammering Lösningsförslag

Pyramid Business Intelligence. Affärsinformation från Pyramid i din smartphone eller läsplatta (150225)

Din guide till. Teknisk Specifikation Säljstöd

Geodataportalen - Metadata - Dokumentation av tjänster

SiteVision 2.0. Driftdokumentation

Filleveranser till VINN och KRITA

Webbens grundbegrepp. Introduktion till programmering. Ytterligare exempel. Exempel på webbsida. Föreläsning 5

Manual Nationell- och systemadministratör

Uppgraderingsinstruktion för Tekis-FB Avisering version 6.3.0

LUPP API. ett API för 3:e-partsleverantörer från LUPP 6.0. Insamling av önskemål

ISM WEB. ISM WEB GIS för alla typer av användare. Kundanpassade Intranät- Internet- Portallösningar

Att prova på en enkel Applet och att lära sig olika sätt att hämta data från tangentbordet. Du får även prova på att skapa din första riktiga klass.

Stompunkt Visning v1.0 - teknisk beskrivning 1.0.0

Systemkrav. Systemkrav för Hogia Approval Manager. Gäller från och med programversion

Innehåll. MySQL Grundkurs

INSTALLATION AV KLIENT

Transkript:

OBS: Några av dessa webservice-länkar är nåbara externt. Andra öppnas om det kommer önskemål. SMHI webservices Bakom kulisserna Infrastruktur och säkerhetslösningar Demonstration av webservices Esa Falkenroth, Informationsarkitekt, SMHI.

Bakom kulisserna? Bakom kulisserna: Live Demo av två olika typer av webservice Vi låtsas vara en dator som ska hämta data. Hämtning av vanliga kartskikt från en geoserver Nerladdning av stora datamängder via webservice Hämtning av information om avrinningsområden. Bakom kulisserna: Vi vill utveckla nya tjänster fort.men hur skyddar vi interna system mot angrepp?? Säker infrastruktur / Autentisering / Övervakning Hantering av sekretess och dataskydd Säkerhetsrutiner Kort lista på teknikval som fungerat bra för SMHI 2

Traditionell infrastruktur säkra webservice En osäker zon (DMZ) med kopia av de data som ska exponeras Interna resurser skyddad eftersom ingen ingående trafik tillåts. Att hålla kopior av flera terabyte data kostar mycket! Elektroniska tryckpressen (publicerar data utan att veta om de behövs) INTERNET DEMILITARIZED ZONE (DMZ) BACKUP INTERNA RESURSER 3

Infrastruktur för säkra webservice Ett osäkert lager (DMZ) utan kopior av stora interna databaser Speciella accessmoduler som begränsar åtkomst till interna resurser Brandväggsregler och olika protokoll in och ut i A-net ökar säkerhet. Interna resurser åtkomliga men ändå skyddade från osäkra zonen. INTERNET DEMILITARIZED ZONE ACCESS-MODULER (A-NET) INTERNA RESURSER 4

Webservice för att nå data Kartor via standardiserade WMS- och WFS-tjänster Nerladdning av stora mängder data. Interna webservice bakom kulisserna för hämta av data från databaser 5

Vanliga WMS-anrop för kartor En applikation anropar webbserver pss som en webbläsare Anropet skickas till en karttjänst (t.ex. en Geoserver) Karttjänsten skickar tillbaka en karta till applikationen. Ofta är applikationen javaskript som kör i en webbläsare. GetMap& version=1.1.1& Layers=SMHI_vatten :huvudavrinningsomraden 2008_2 & width=415 & height=550 & srs=epsg:3021 http://map.smhi.se/geoserver/wms?bbox=1009259.62277 19582,6036447.5032413,2226407.6960645295,7821210. 570555659&styles=&Format=image/png&request=Get Map&version=1.1.1&layers=SMHI_vatten:huvudavrinn ingsomraden2008_2&width=415&height=550&srs=ep SG:3021 6

Visning genom en webbapplikation (indirekta WMS-frågor): http://www.geodata.se 7

Helt vanlig kartlösning bakom kulisserna Openlayers i webbläsaren. Anrop går via Apache-front Geoserver svarar på WMS-anrop Cachade bilder för alla zoomnivåer för prestanda i kartan (ca 1 miljon bilder). Resultatet är bilder Lite WFS-tjänster för att visualisera mätstationer och valda områden Ganska vanlig lösning. 8

En helt annan typ av webservice - Nerladdning av stora mängder data Slutresultatet resultat från simuleringar och mätningar snarare än kartor Liknande sätt att hämta data: En applikation anropar webserver på samma sätt som en webbläsare URL http://maskinnamn.smhi.se/nerladdningstjänst/sökvillkor/sökvillkor HTTP method (GET/ POST/ PUT/ DELETE) REST-teknik skapar en illusion av att data finns i en katalogstruktur Topp-kataloger motsvara metadata Längst ner ligger data. Undersöka vilka mätstationer SMHI har http://homevatten-utv:5555/wiskiws/v1/stations Hämta ner tidsserier från 1923-08-01 till 2011-01-17 för Kukkasjärvi http://homevatten-utv:5555/wiskiws/v1/stations/1160/q/daymean 9

Exempel hämta simuleringsdata via webservice (annan drill-down ) Utvecklat för VISS men kan efter överenskommelse användas av vem som helst GET /v1 (Vilka nerladdningar stöds?) GET /v1/downloadsetup1/ (Vilka områden finns det data för) GET /v1/downloadsetup1/613954-134879/ (Vilka data för ett område) https://vattenwebws-tst.smhi.se/v1/ https://vattenwebws-tst.smhi.se/v1/downloadsetup1 https://vattenwebws-tst.smhi.se/v1/downloadsetup1/614578-138391 REST gör det lätt att utforska metadata. vilka delavrinningsområden finns Vilka data kan man hämta för dessa delavrinningsområden? Applikation kan direkt gå in databaser och hämta senaste data. 10

Ytterligare ett exempel: Hämta data från SVAR via webben http://produkter.smhi.se/svar/sws/sws.php?aroid=650452-150081 11

Bakom kulisserna: REST-standarden package com.suryasuravarapu.jersey; import javax.ws.rs.get; import javax.ws.rs.path; import javax.ws.rs.produces; @Path ("/helloworld") public class HelloWorldResource { @GET @Produces ("text/plain") public String sayhello() { return "Hello World"; } } Tredjepartsprodukter Apache/Tomcat/Jersey tar hand om anropet från maskinen Jersey bygger på Representational state transfer (REST) JSR 311(JAX-RS) standarden. Svar från webservice kan formatteras: - Excel - XML - Text etc, etc.. 12

Arbete på SMHI för att möjliggöra snabbare utveckla webservice utan att riskera viktiga produktionssystem

Infrastruktur för säkra webservice Ett osäkert lager (DMZ) utan kopior av stora interna databaser Speciella accessmoduler som begränsar åtkomst till interna resurser Brandväggsregler och olika protokoll in och ut i A-net ökar säkerhet. Interna resurser åtkomliga men ändå skyddade från osäkra zonen. INTERNET DEMILITARIZED ZONE ACCESS-MODULER (A-NET) INTERNA RESURSER 14

Säkerhet: Infrastruktur/användarhantering Säker infrastruktur (flera nätverkszoner, brandväggsregler, minimala portöppn) Skydd mot Denial-of-Service attacker mot interna databaser genom att Access-moduler reglerar trafiken mot interna system. Säkra tredjepartsprogramvaror med mycket stort antal användare (patchar) Redhat Linux, Apache, Tomcat, Postgres. Säker användarhantering Applikationer kör på användaridentiteter med reducerade rättigheter. Separata identiteter för läsning och skrivning i databaser. Central katalog för autentisering av användare (Active Directory via LDAP/S) Inloggning skyddar mot riktade attacker. Övervakning av webbapplikationens status (OP5/Unicenter) Stora delar av driftsättningar automatiserade (rpm/ppm mgmt) Rättigheter sätt i installationsskript (mindre risk att missa något). 15

Säkerhetsarbete Egna periodiska portskanningar och simulerade attacker Nessus.org Gransning med fokus på säkerhet Klassning av informationstillgångar Design-granskning av arkitektfunktion och säkerhetsansvarig Rutiner för hantering av incidenter 16

Sekretess och skydd av data Hantering av sekretessbelagd närmast informationen Databasen lämnar ut NULL ifall man frågar efter sekretessbelagda tidsserier Accessmodulen har listor på öppna data och släpper bara igenom öppen information till access-nätet (A-net) Säker autentisering via AD/LDAP-S Accessmoduler implementerar endast hämtning (ingen skrivning i interna databaser for now). 17

Framtidsvision: Ge användare data så de kan presenteras & sampresenteras

Visning genom en egen webbapplikation (indirekta WMS-frågor): http://produkter.smhi.se/svar/svar2008.htm 19

Visning genom en extern webbapplikation (indirekta WMS-frågor): http://www.geodata.se 20

Visning av tjänster genom ArcMap Topografisk karta från lokalt på SMHI (grön) Brunnar, WMS från SGU(blå punkter) Delavrinningsområden WMS från SVAR, SMHI (röda linjer) 21

Metadata ISO-19115 22

Nyfiken på teknikval som fungerat bra? Säker stabil webbserver: Apache Köra webbapplikation i java: Tomcat Hantering av webservice-anrop: Jersey Kartserver: Geoserver med cachade bilder för zoomnivåer (ca 1,000,000 bilder). Excelgenerering: Apache POI Databas-lösning. Postgres 8.4 Koppling mot databas: JDBC Loggning: log4j 23