Hej och välkommen tillbaka, hoppas sommaren varit bra :)
Jag hade ju en hel del frågor och en del är fortfarande obesvarade, men jag
tror att om ni kan svara på det första mailet (se nedan) så tror jag det
rätar ut frågetecknen på de flesta av mina funderingar och frågor.
<första mailet>
* En mer uppdaterad bild av denna:
* Ett sekvensdiagram med alla steg.
* En koppling mellan sekvensdiagrammet, den uppdaterade bilden och OpenID
Connect flödet enligt specifikationen, gärna med exempel.
</första mailet>
/Anders
mån 15 aug. 2016 kl 15:19 skrev Rebecka Gulliksson <
rebecka.gulliksson at umu.se>:
Hej,
ursäkta det sena svaret, nu är jag tillbaka från semestern, se nedan för
svar om OpenID Connect:
· Flöden: just nu stödjer se-leg flera flöden (code, implicit och
hybrid). Vi kommer nog hålla oss till Authorization Code Flow framöver
(främst p.g.a. det senaste säkerhetsarbetet för OpenID Connect), så det är
vad som bör implementeras för att interagera med se-leg OP’n.
· response_mode: din analys är helt korrekt, response_mode får
inte användas på det sätt vi gjort. ‘Security Consideration’-sektionen i
http://openid.net/specs/oauth-v2-multiple-response-types-1_0.html#Security
beskriver säkerhetsskälen för att inte använda query-encoding vid annat än
code-flow med konfidentiella klienter. Jag ska uppdatera se-leg OP’n till
att vara mer strikt, tack för rapporten!
Vänliga hälsningar,
---
Rebecka Gulliksson
ICT Services and System Development (ITS)
Umeå University
SE-901 87 Umeå, Sweden
rebecka.gulliksson at umu.se
www.its.umu.se
*From: *se-leg-ref <se-leg-ref-bounces at lists.sunet.se> on behalf of
Anders Gembäck <anders at diglias.com>
*Date: *Tuesday 2 August 2016 15:25
*To: *"se-leg-ref at lists.sunet.se" <se-leg-ref at lists.sunet.se>
*Subject: *Re: [Se-leg-ref] Flödet i detalj
Hej,
Vi har kollat mer och har lite funderingar/frågor/diskusionspunkter.
/Anders
OpenID Connect implementationen
Detta kapitel innehåller några funderingar till Open ID connect i se-leg.
Eftersom jag inte kunnat köra med min egen RP än så är vissa av punkterna
suspects och samtliga punkter är diskussionspunkter, inte korrigeringar
eller buggrapporter.
Flow
Enligt intiala dokumentationen så är det Implicit flow som ska
implementeras, men eftersom *response_mode* är med måste det vara
Autorization Code Flow, eftersom den bara får vara med i det flödet.
Auth req
Detta exempel har jag tagit från en logfil hos docker-maskinen.
{
"claims": {
"userinfo": {
"identity": null
}
},
"client_id": "client1",
"nonce": "d5c36519-0253-4f31-b999-bb7ea5191293",
"redirect_uri": "http://rp:5000/authorization-response",
"response_mode": "query"
"response_type": "code id_token token"
"scope": [
"openid"
],
"state": "a2a89f4c-0271-465b-bca6-4bc1a95e1823"
}
Kommentarer
Vissa av delarna stämmer inte överens med specifikationen enligt min
tolkning.
repsonse_mode (query)
Eftersom *query* är default (?) är denna NOT RECOMMENDED
response_type
Enligt
http://openid.net/specs/oauth-v2-multiple-response-types-1_0.html#Combinati…
får inte *“code id_token token”* använda sig av query *response_mode*.
Successful Authentication Response (3.1.2.5)
Det står att parametrarna MÅSTE returneras som query parameterar. Fast i
se-leg flödet är det väl här som OP’s backend anropas RP’s backend med code
och state? Har jag missuppfattat flödet eller specen (det kanske svaras i
mailet som svarar på mina första frågor)?
mån 20 juni 2016 kl 07:55 skrev Anders Gembäck <anders at diglias.com>:
Hej,
För att helt förstå flödet skulle vi vilja ha:
* En mer uppdaterad bild av denna:
https://github.com/SUNET/se-leg-docs/blob/master/proofing-skiss.png
* Ett sekvensdiagram med alla steg.
* En koppling mellan sekvensdiagrammet, den uppdaterade bilden och OpenID
Connect flödet enligt specifikationen, gärna med exempel.
mvh
Anders Gembäck