Ideelabori OpenID serveri (openid.ee) kasutusjuhised arendajatele
- English summary: https://openid.ee/about/english
OpenID.ee on OpenID teenus mis kasutab Mobiil-ID ja ID-kaardi võimalusi inimeste tuvastamiseks ja autentimiseks. Kõik veebilehed mis oskavad OpenID protokolli saavad selle teenuse kaudu ligipääsu ID-kaardile ja Mobiil-IDle. OpenID kohta rohkemat leiad selle veebilehelt http://openid.net
OpenID demo
- Seesama veebileht, https://ideelabor.ee/opensource/login
- Seal saab autentida kõiki OpenID-sid
- Eraldi on tugi lisatud OpenID.ee teenuse jaoks mille kasutamiseks piisab ühest klikist.
- Demorakendus, kus kasutatakse OpenID abil sisenemist, kusjuures rakenduse loogika on järgmine:
- Iga ID-kaardi või Mobiil-ID omanik omab unikaalset "preapproved" kontot, kusjuures mitte keegi ei saa omada kahte kontot. Iga inimese konto unikaalsus on garanteeritud isegi siis, kui ta valib jääda anonüümseks ning ei edasta enda isikuandmetest mitte midagi.
- Inimese isikuandmed tema kontol tulevad otse ID-kaardilt, ning teada on, et kui inimene on otsustanud avalikustada enda isikuandmeid, siis on need garanteeritult tõesed.
- Kasutajad saavad postitada "väiteid", mille tõesust saavad teised kasutajad hääletada ning diskuteerida.
- Iga kodanik saab hääletada teise püstitatud väiteid (á la jyte.com), kusjuures garanteeritud on, et igal inimesel on igas teemas täpselt üks hääl, s.t. mitte keegi ei saa hääletada 2x.
- Iga inimene saab tagantjärgi kõiki enda valikuid muuta või kustutada - püstitatud väited, antud hääled ning isikuandmete avalikustamine.
Kuidas lisada enda veebilehele OpenID tugi ?
- Kui kasutad valmistarkvara (CMS, blog vms) siis võib Sinu tarkvara jaoks olemas olla vastav plugin. Google teab vastuseid.
- Wordpress - http://willnorris.com/2007/11/wp-openid-20-released
- Plone - http://plone.org/documentation/how-to/openid-support
- Drupal 6.2 - http://drupal.org/
- OpenID teegid on saadaval erinevate keelte jaoks - http://wiki.openid.net/Libraries
- PHP - http://openidenabled.com/php-openid/ Tiri endale näidisrakendus ja proovi järgi!
- Python - http://openidenabled.com/python-openid/
- Java - http://code.google.com/p/openid4j/
- Ruby - http://openidenabled.com/ruby-openid/
- Kindlasti kasuta OpenID 2.0 teeke!
- Arendajatele on olemas hea juhis mida kindlasti tasuks lugeda - http://www.plaxo.com/api/openid_recipe
Kuidas kasutada OpenID.ee teenuse lisasid ?
Esimene samm on lisada enda veebilehele OpenID tugi ja veenduda selle korrektses töös. Edasi tuleb veebirakendusse sisse viia vajalikud kitsendused mis arvestavad kasutuslugudega ja OpenID.ee teenuse eripäradega.
OpenID.ee URL-id
Teenus toetab kolme tüüpi URL-e
- Inimsõbralik ehk eesti.ee aadress
- https://openid.ee/u/sinu.nimi(_1234)
- Igal inimesel on ainult üks selline aadress. sinu.nimi on @eesti.ee aadressi esimene pool ja võib seega olla ka jaan.tamm.32 (kui sama nimega inimesi on rohkem kui 1) või vanade sertifikaatide puhul jaan.tamm_1234. Viimasel juhul on selle aadressi kasutamine mitte soovitav sest koos ID-kaardi uuendamisega muutub @eesti.ee aadress ja seega ka OpenID aadress!
- Eeldab, et kasutaja on ID-kaardiga külastanud OpenID.ee teenust vähemalt korra
- Kuidas eristada: OpenID URL algab stringiga https://openid.ee/u/
- Masinasõbralik ehk isikukoodiga aadress
- https://openid.ee/i/EE:12345678901
- Igal inimeseon on ainult üks selline aadress. Aadress ei muutu ja seda saab kasutada ilma inimese eelneva külastuseta OpenID.ee lehele.
- Kuidas eristada: OpenID URL algab stringiga https://openid.ee/i/
- Anonüümne ehk kole aadress
- https://openid.ee/a/29dd7a86e7020ab672731508e07b71ddde05a7e2
- Igal inimesel on ainult üks mitte muutuv aadress iga veebisaidi kohta. Ehk siis http://neti.ee jaoks üks ja http://delfi.ee jaoks teine.
- Kuidas eristada: OpenID URL algab stringiga https://openid.ee/a/
Simple Registration
- Toetatud on Simple Registration 1.1 draft 1 - http://openid.net/specs/openid-simple-registration-extension-1_1-01.html
- Andmed, kui kasutaja need teenusele otsustab edastada, on kontrollitud ja tõesed järgnevate väljade puhul:
- fullname - nimi
- gender - sugu
- dob - sünnikuupäev (NB! mõned kuupäeva komponendid võivad olla tühjad, http://openid.net/specs/openid-simple-registration-extension-1_1-01.html#response_format )
- email - @eesti.ee aadress
PAPE
- OpenID.ee teenus kasutab PAPE Draft 1 laiendust http://openid.net/specs/openid-provider-authentication-policy-extension-1_0-01.html
- Mobiil-ID autentimise puhul on auth_age väärtuseks aeg sekundites mobiil-ID autentimistoimingu tegemisest (kuni 30 minutit)
- Mobiil-ID NIST level on 3, ID-kaardil 4
- Päringus olevat max_auth_age parameetrit saab kasutada Mobiil-ID sessiooni vanuse kontrolliks. Mobiil-ID sessioon kestab 30 minutit või kuni brauseri sulgemiseni.
OpenID kasutajatele
Kuidas kasutada lihtsalt/anonüümselt OpenID-d
- Sisesta openid.ee ja toksi 'login'
- Kui veebisaidilt tuleb viga 'can't find openid server' siis OpenID 2.0 pole toetatud
- Logi sisse openid.ee/minu.nimi OpenID-ga ja saada teenuse veebimeistrile e-mail, et OpenID 2.0 uuenduse teeks.
openid.ee/u/minu.nimi on tore küll, aga tahaks kasutada minunimi.ee
Lisa enda veebilehe HEAD tagide vahele järgnev:
<!-- OpenID 2.0 --> <meta http-equiv="X-XRDS-Location" content="https://openid.ee/u/[Sinu@eesti.ee aadressi esimene pool enne @ märki]/xrds" /> <!-- OpenID 1.1 --> <link rel="openid.server" href="https://openid.ee/server"/> <link rel="openid.delegate" href="https://openid.ee/u/[Sinu@eesti.ee aadressi esimene pool enne @ märki]"/>
Sinu @eesti.ee aadress on päris nimega @eesti.ee aadress. Seadista enda @eesti.ee aadress eesti.ee portaalis
Nüüd on Sinu veebilehe aadress Sinu PIN1 koodiga töötav OpenID!
Näide. Minu veebilehe aadress on http://martin.paljak.pri.ee. Minu @eesti.ee aadress on martin.paljak@…. Lisasin enda kodulehe HEAD tagide vahele selle:
<meta http-equiv="X-XRDS-Location" content="https://openid.ee/u/martin.paljak/xrds" /> <link rel="openid.server" href="https://openid.ee/server"/> <link rel="openid.delegate" href="https://openid.ee/u/martin.paljak"/>
Nüüd on http://martin.paljak.pri.ee minu OpenID. Selle kasutamiseks küsib https://openid.ee PIN1 koodi.
