dataporten workshop

Post on 28-Jan-2018

52 Views

Category:

Technology

3 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Dataporten – sikker og enkel deling av data i UH-sektoren

UNINETT Fagdager 2. mai 2017

andreas.solberg@uninett.noAndreas Åkre Solberg

sigmund.augdal@uninett.noSigmund Augdal

Dataporten Workshop 13:00 - 17:00

Deltakerene: noen uten pålogging til Dataporten?

Introduksjon

Om Dataporten

OAuth og OpenID Connect

API-er med mer.

Hva er nytt og hva er planer videre…

Spørsmål, diskusjon med mer underveis.

Hands-on med OAuth, OpenID Connect og API-er.

2

Hva er Dataporten? Dataporten har vært mulig å realisere på grunn av Feide, og bygger videre på plattformen for å dekke nye behov.

Nytt grensesnitt mot tjenesteleverandører som også egner seg for datatilgang. OAuth 2.0 / OpenID Connect.Samme token som utleveres ved autentisering kan brukes til å nå alle datakildene tjenesten har tilgang til. Stort potensial og forenkling for tjenesteutviklere.

Gruppe API. Mer kontekst om brukeren.

Bedre støtte for mobilapplikasjoner

100% selvbetjening. Utviklervennlig. Alle kan opprette tjenester. Ingen betaling kontrakt eller manuell godkjenning. Økt fokus på selvbetjening.

Tilgangsstyring til API-er (også tredjeparts API-er)

Brukergrensesnitt for å forespørre og godkjenne tilgang mellom applikasjoner og datakilder.

Flere autentiseringskilder:

Feide

ID-porten

eduGAIN (Internasjonal pålogging)

Gjestebrukere (openidp.feide.no)

Sosiale nettverk (Facebook, LinkedIn, Twitter)

Testbrukere

OpenID Connect

OAuth 2.0

REST APIHTTP

Dataporten

Autentisering

IDporten gjestereduGAIN

Grupper…

API GatekeeperHTTP

Tjeneste backend Datakilde 1 Datakilde 2

Feide

Tjeneste 2Mobil app

Tjeneste 1Web app

Tjeneste 3

Datakilde 3

Grenseflate 1Tjenester

100% selvbetjening

Grenseflate 2API / Datakilder

100% selvbetjening

Grenseflate 3Autentiseringskilder

5

100% selvbetjening

6

Valg av login providere. Blandt annet ID-porten

Litt mer om ID-portenKrever manuell godkjenning på organisasjonsnivå.

Mulighet for fakturering ved mye bruk.

Fødselsnummer leveres ikke videre til tjenesten by default.

Planer om oppslagstjenester f.eks. mot kontakt og reservasjonsregisteret og/eller folkeregisteret. Må utredes. På planen for i år.

Mulig med uthenting av data fra kilder basert på fødselsnummer uten at tjenesten får utlevert fødselsnummer.

7

8

Åpent for alle Studenter og utviklere

kan også være tjenestetilbydere

9

OAuth 2.0

OAuth 2.0 and Bearer Tokens

Authorization requesthttps://auth.dataporten.no/oauth/authorization?response_type=code&client_id=1234

User logs in

User accept consent

User is redirected back to the service provider with a token (sometimes via temporary code)A token looks like this:f9ab4387-0cf2-457f-b83c-712b0c99e4b9

Service provider uses token when accessing REST APIs, such as the userinfo or groups API:GET /api/something HTTP/1.1Host: api.dataporten.noAuthorization: Bearer f9ab4387-0cf2-457f-b83c-712b0c99e4b9

OpenID Connect

Identity layer on top of OAuth 2.0

Standardises userinfo endpoint

Sends cryptographic signed token with user identity along with the Oauth token.

JWT - JSON Web Token (various signed messages in OpenID Connect)

12

Grupper

13

OpenID Connect

OAuth 2.0

REST APIHTTP

Dataporten

Autentisering

IDporten gjestereduGAIN

Grupper…

API GatekeeperHTTP

Tjeneste backendDatakilde 1

Datakilde 2

Feide

Tjeneste 2Mobil app

Tjeneste 1Web app

Tjeneste 3

Datakilde 3

FSAT Feideorgunit

FeideGO

adhocGroupEngine

UH-AD?

BAS?

OrgOrgunit

undervisnings-gruppe

basisgruppe

kullklasse

studieprogramstudieretning

emner

organisatoriske grupperprosjektermed mer

Gruppemodell

Hent ut gruppene den påloggede brukeren er medlem i.

Gruppe API

GruppetypeGruppe MedlemskapPerson

Andreas medlemsom ansatt i

avdeling for system og mellomvare

organisatorisk grupe

ad-hoc grupper

Alle kan opprette ny grupper, og invitere inn andre medlemmer.

Dataporten + Mobil-apps Studentbevis App FSAT Dataporten gir – støtte for mobil applikasjon – tilgangsstyring til FS semesterdata– gjenbrukbare API-er for semesterdata til andre tjenester

16

Sesjonsvarighet 8 timer eller 2 år OAuth gir mulighet for innlogging via mobil. › In-app browser vs. › System browser + custom url scheme

17

status.dataporten.no Status utrulling av Dataporten i høyere utdanning.

Grunnopplæringa.

for sluttbrukeren

19

Valg av organisasjon

erstatter Feides valg av org.

inkrementell søk

sortering etter avstand. logoer og koordinater.

Legger også til alternative påloggingsvalg: sosiale nett og IDporten.

Introduserer internasjonal pålogging med selektor for land.

Vises veldig skjelden. Kun første gang per bruker per maskin/nettleser

20

Kontovelger

innfører click-trough for SSO

oppmerksomhet rundt hvilken rollen man logger inn på tjenesten som.

I fremtiden kan dette representere rolle-valg.

En variant av det å huske hvilken institusjon man valgte å logge inn med forrige gang, og samtidig holder åpent muligheten for å velge annerledes denne gangen.

21

Samtykke

Erstatter Feides info om overføring av attributter.

Modell for juridisk grunnlag for utlevering av personlige data

To hovedklasser:

Personlig samtykke og frivillig bruk. (ikke barneskole)

Obligatorisk bruk i undervisningen: databehandleravtale med mer.

Disse to klassene bygges inn i Dataporten.

23

Flere datakilder

OpenID Connect

OAuth 2.0

REST APIHTTP

Dataporten

Autentisering

IDporten gjestereduGAIN

Grupper…

API GatekeeperHTTP

Tjeneste backend Datakilde 1 Datakilde 2

Feide

Tjeneste 2Mobil app

Tjeneste 1Web app

Tjeneste 3

Datakilde 3

Grenseflate 1Tjenester

100% selvbetjening

Grenseflate 2API / Datakilder

100% selvbetjening

Grenseflate 3Autentiseringskilder

API Library

Langsiktig mål om et bredt tilbud av API-er som bidrar til å minimere integrasjonskostadene ved oppbygging av nye tjenester – både sektorens egne tjenester og eventuelle kommersielle tredjeparts tjenester.

25

26

Litt om API Gatekeeper

27

Når man får en access token, så kan denne benyttes mot både Dataporten interne APIer, men også mot tredjeparts APIer via API Gatekeeperen.

En access token er knyttet til et sett av scopes. En liste av scopes kan for eksempel være:userinfo, feide, email, gk_mediasite, gk_mediasite_admin

OAuth 2.0 Access Token

28

Klient

API Gatekeeper

En endret IKT-arkitektur – enklere tjenesteutvikling og verdiskapning

Enkelt grensesnitt

Autentisering og datakilder i norsk utdanningssektor

Dataporten

Autentisering

IDporten gjestereduGAIN

Grupper FS Læringsanalyse Open badges

Feide

Tjeneste 2Mobil app

Tjeneste 1Web app

Tjeneste 3

Innholds-leverandør 1LMS Cristin

Tilgang til et stort harmonisert, attraktivt marked med lave eller fraværende integrasjonskostnader

Motivasjon til å gjøre autorative datakilderstandardiserte, gjenbrukbare, tilgjegenlige, forhindre leverandørbindinger

Digital eksamen

IaaSPaaS

Åpne data

Data hos utdanningsinstitusjoner bør deles by default.

Viktig for fremtidig verdiskapning.

Ikke vent på forespørsler eller konkrete behov!

Kan også brukes internt!

Mye enklere å håndtere datasett som ikke behøver aksesskontroll.

30

UtloggingUtlogging i Dataporten.

Applikasjon bør ha en knapp for utlogging som:

Avslutter lokal sesjon,

og deretter videresender brukeren til en utloggingsside hos Dataporten.

Der vil Feide-sesjonen avsluttes, og andre Feidetjenester,

men ikke andre Dataporten-tjenester.

Mobil app, langvarige sesjoner…

31

32

Hva er nytt! og planer videre…

33

Delegering av rettigheter til grupper for en applikasjon eller API

34

International users

35

Pilotering med integrasjon med UH-AD Også aktuelt å eksperimentere med API-er mot BAS:

Cerebrum, nytt felles BAS

Mer samordnet sluttbrukeropplevelseFeide + Dataporten

På kort sikt: loginflyt for sluttbrukere

På lengre sikt: komplett samordning, alt fra kundeportal, styringsmodell, support, finansiering med mer.

36

Grunnopplæringa

Grunnopplæringa var med i piloten.

Ingen dato enda for lansering (enda).

Vil involvere samarbeid med IKT-senteret

37

Signerte tokensØnsker mulighet for å kunne signere tokens med rettigheter for spesifikke formål, som kan sendes og valideres direkte uten å benytte API Gatekeeper.

38

Operasjonelle utvidelser for å øke tilgjengelighet

Multiple datasentre

39

Datasenter 1

AuthEngine Core API

Cassandra Cassandra Cassandra

API Gatekeeper

Group engine

Datasenter 2

AuthEngine Core API

Cassandra Cassandra Cassandra

API Gatekeeper

Group engine

LB LB

TrondheimBergen

OsloTromsø

40

Biblioteker og demokode

41

docs.dataporten.no

Open Source applikasjoner Dataporten + Docker

DokuWiki

MediaWiki

Wordpress

Drupal

Mattermost

GitLab

Redmine

WekanBoard

OwnCloud

Jupyter Notebook

Flarum

Etherpad

Rocket.chat42

Flarum

43Etherpad

Rocket.chat

44

Libraries 45

Docker + Dataporten

Well suited for automation

Well suited for simple configuration using environment variables

46

top related