BAAT - Kartverket

BAAT
Rolf Dybdal, IT-Avdelingen, Kartverket
Agenda
•
•
•
•
Kort om historien
Hensikt
BAAT i praksis
• WMS
• Cache
Noen tanker om framtiden.
Historien bak
• Norge digitalt avtaleverk
vedlegg P4 - Krav til data
og tjenester
– Tjenester som tidligere har
ligget fritt tilgjengelig på
nettet, vil nå bli / er nå
underlagt kontroll. Det er krav
om å identifisere brukerne
samtidig som de gis
differensiert autorisasjon til å
hente data. Det blir iverksatt
telling av datauttak for den
enkelte bruker / part.”
Hensikt
•
Kort fortalt:
• BAAT skal kontrollere tilgang til tjenester og data
• Sikkerheten skal være ”god nok”
• Registrere hva som «tas ut», og hvem som gjør det.
• Samlet brukeradministrasjon for tjenester.
Teknologi
•
Basert på «ticket»,
• Eller ip-adresse
•
•
Token hentes før tjenestekallet gjennomføres
Ikke ulikt Oauth /OpenID connect…
WMS
60-70-80 tjenester
• openwms.statkart.no
• wms.geonorge.no
/skwms1/wms.navn?
/skwms1/wms.navn?
WMS - åpne tjenester
•
•
•
Åpne tjenester (http://openwms.statkart.no/)
Lisens er: CC BY 4.0 (Creative Commons navngivelse 4.0)
(http://www.kartverket.no/Kart/Gratis-kartdata/Lisens/)
•
Begrensninger:
• 300 kall pr unike ip pr døgn (langtidsbegrensning)
• Max 30 kall på 10 sek (korttidsbegrensning)
WMS - tilgangskontroll
•
•
Norge digitalt++ (http://wms.geonorge.no/)
Begrensning: 30 kall på 10 sek.
•
Registrert IP
• Forhåndsregistrert (enkelt-IP, nettverk)
• Selv-registrert IP (Kun enkelt IP (host)) (Demo?)
• Begrenset gyldighet (inntil 8 timer)
Ticket:
•
WMS-tilgangskontroll:
Ticket
•
•
Krever gyldig BAAT bruker med rettigheter til aktuell tjeneste
Hente ticket:
• https://baat.geonorge.no/skbaatts/req?
• Parametre:
• Brukerid
[BAAT brukernavn]
• Passord
[Tilhørende passord]
• Retformat - [s|es|xml]
• Tjenesteid - [Tjenestenavn; wms.xxx]
•
Svar: B1F442BM, 425687586;3600000
WMS – BAAT i praksis
•
Hente ticket:
• På forhånd (når bruker laster applikasjonen)
• Underveis, ved hjelp av Ajax/XMLHttpReqest kall
•
Kombinasjon av de to.
•
•
•
•
Kall til tjenesten:
wms.geonorge.no/skwms1/wms.topo2?ticket=ttiicckk&….
Eller
wms.geonorge.no/skwms1/wms.topo2/ti_ttiicckk?...
BAAT ticket med Ajax
<!DOCTYPE html>
<html><head>
<script>
function loadXMLDoc()
{
var xmlhttp;
if (window.XMLHttpRequest) {
xmlhttp=new XMLHttpRequest();
}
else {
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function() {
if (xmlhttp.readyState==4 && xmlhttp.status==200) {
document.getElementById("ticket").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","https://baat.geonorge.no/skbaatts/req?brukerid=[bruker]&passord=[passord]&retformat=s&tjenesteid=[wms.tjeneste]",true);
xmlhttp.send();
}
</script>
</head>
<body>
<div id="ticket"><h2>Here be tickets</h2></div>
<button type="button" onclick="loadXMLDoc()">Update</button>
</body></html>
Cache – åpne tjenester
•
•
•
http://opencache.statkart.no/gatekeeper/gk/
Lisens er: CC BY 4.0 (Creative commons navngivelse 4.0)
(http://www.kartverket.no/Kart/Gratis-kartdata/Lisens/)
•
Begrensninger:
• 10 000 kall pr unike IP pr døgn (langtidsbegrensning)
Cache -tilgangskontroll
•
•
Norge digitalt++ (http://gatekeeper1.geonorge.no)
Ingen begrensinger (med tanke på antall kall etc)
•
•
Krever bruk av token (tilgangsnøkkel) for tilgang.
Tokenforespørsel kun fra registrert IP
• http://gatekeeper1.geonorge.no/BaatGatekeeper/gktoken?ip=
192.168.1.1&min=60
•
Retur:
•
E4131A6725881B731D24092D61D19CB41934B515E27165BEA729C6E5EEB2CAD7E47A43AD0CF88A043177C1859983D807AA638DB56D53911302ED3328E0BB1926
Cache -tilgangskontroll
•
•
Bruk:
http://gatekeeper1.geonorge.no/BaatGatekeeper/gk/gk.
cache?gkt=29E5E3C9E1D0B33957721A7208B.......&Layers=...
Framtiden
•
•
•
•
Bytte ut BAAT med f.eks Oauth / OpenID connect?
• Mer av det samme?
Bytte til et mer omfattende, men standardisert regime?
• RBAC (Role Based Access Control)
• XACML /geoXACML (eXtensible Access Control Markup
Lang.)
Forenkle
• HTTP basic authentication?
Forenkle enda mer og gjøre alle tjenester åpne?
• (bortsett fra noen som ikke skal eller kan åpnes)