Hvordan integrere med Weblogin

For ? integrere din tjeneste med Weblogin, trenger du en Service Provider (SP). En SP er den delen av et system som tar seg av kommunikasjonen med en Identity Provider (IdP), som f.eks. Weblogin. SP-en benyttes av din applikasjon, og fungerer som et kontaktpunkt for ? utveksle informasjon med Weblogin.

Krav til Service Provider

For at en Service Provider skal kunne ta i bruk weblogin m? den:

  • St?tte protokollen SAML 2.0.
  • St?tte profilen SingleLogout (SLO). Dette er valgfritt i SAML 2.0-spesifikasjonen, men UiO har av sikkerhetsmessige ?rsaker dette som et krav.
  • Kunne sende metadata til weblogin for ? sette opp tjenesten.

Oppsett av Service Provider

Den enkleste m?ten ? f? en applikasjon til ? snakke med Weblogin, er ? ta i bruk et ferdig programvare, i form av en SP-modul eller SP-rammeverk. Weblogin har kun st?tte for protokollen SAML2.0. Din SP m? ha st?tte for dette.

En SP kan enten integeres i din tjeneste, eller settes opp som en frittst?ende applikasjon som kontaktes av din tjeneste n?r det er behov for autentisering eller utlogging av brukere.

For ? benytte Weblogin som IdP for din SP, kreves en del konfigurasjon. Hvordan du setter opp og konfigurerer din SP er avhengig av hvilken implementasjon du benytter. Nettsidene til programvaren du benytter b?r ha dokumentasjon om dette.

F?rste steg i prosessen, vil v?re ? legge inn metadata om Weblogin i din SP. Metadata finner du p?:

Etter at metadata er lagt inn, m? du sende en bestilling om ? legge inn metadata for din SP i Weblogin. Dersom du setter opp en ny Service Provider, kreves det at du f?rst integrerer denne mot Weblogin sitt testmilj?, weblogin-test.uio.no.

Forslag til programvare for SP

PHP: SimpleSAMLphp

SimpleSAMLphp er utviklet av Uninett, og benyttes b?de av FEIDE og Weblogin. Det er en komplett tjeneste som kan settes opp b?de som en standalone SP og som en IdP. Dokumentasjonen for hvordan man integrerer SimpleSAMLphp i ens applikasjon er noe tynn, men komplett. Dokumentasjon for SP-oppsett finner du p? SimpleSAMLphp.org

Java: OIOSAML.Java

En java-basert SP som ogs? er mer eller mindre klar til bruk, eventuelt til ? integreres i en annen applikasjon.

Java: Spring Security SAML

Spring-rammeverket for Java har en SAML-modul som kan benyttes b?de som IdP og SP. Spring Security-modulen kan benyttes for ? kombinere SAML-autentisering med andre former for autentisering. Rammeverket benyttes hos UiO i Nettskjema.

Apache: mod_auth_saml

mod_auth_saml er en Apache2 autentiseringsmodul. Denne kan v?re spesielt nyttig for legacy-apps eller applikasjoner der man benytter Apache til ? ta seg av autentisering av brukeren. Som for annen autentisering p? webserverniv? s? vil denne metoden fungere som en gateway der alt innhold som krever innlogging vil provosere frem innlogging. En integrert SP vil kunne la vanlig surfing foreg? anonymt, men f.eks. redigering vil kreve innlogging.

Apache: mod_auth_mellon

mod_auth_mellon er en komplett Apache2 autentiseringsmodul og SP, utviklet av Uninett. Modulen gj?r det enkelt ? gj?re autentisering og aksesskontroll i Apache.

SAML: OpenSAML 2

OpenSAML gir ikke SP- eller IdP-funksjonalitet, men er et rammeverk for ? utvikle tjenester som snakker SAML. Flere SP-er og IdP-er benytter OpenSAML som basis, og dette er et godt startsted dersom du skal utvikle din egen SP. OpenSAML er open source.

Emneord: Weblogin, teknisk, utvikling Av David Egeland, Mathias Meisfjordskar, Fredrik Larsen
Publisert 15. aug. 2014 10:54 - Sist endret 4. apr. 2022 10:41