Differenze tra le versioni di "Gruppo di Lavoro OIDC"
(23 versioni intermedie di 2 utenti non mostrate) | |||
Riga 25: | Riga 25: | ||
|Antonio Florio | |Antonio Florio | ||
|florio@agid.gov.it | |florio@agid.gov.it | ||
+ | |- | ||
+ | |Stefano Zanelli | ||
+ | |stefano.zanelli@unitn.it | ||
+ | |- | ||
+ | |Davide Vaghetti | ||
+ | |davide.vaghetti@garr.it | ||
+ | |- | ||
+ | |Nunzio Napolitano | ||
+ | |nunzio.napolitano@uniparthenope.it | ||
|} | |} | ||
Riga 35: | Riga 44: | ||
2.Sviluppare casi di uso e scenari federativi, considerando le innovazioni apportate da: | 2.Sviluppare casi di uso e scenari federativi, considerando le innovazioni apportate da: | ||
− | *[https://openid.net/specs/openid-connect-discovery-1_0.html#IssuerDiscovery Web Finger], [https://openid.net/specs/openid-connect-discovery-1_0.html#ProviderConfig dynamic discovery] e [https://openid.net/specs/openid-connect-registration-1_0.html dynamic client registration] | + | *[https://openid.net/specs/openid-connect-discovery-1_0.html#IssuerDiscovery Web Finger], [https://openid.net/specs/openid-connect-discovery-1_0.html#ProviderConfig dynamic discovery] e [https://openid.net/specs/openid-connect-registration-1_0.html dynamic client registration], [https://openid.net/specs/openid-connect-federation-1_0.html#rfc.section.2.2 Trust Chains], [https://openid.net/specs/openid-connect-federation-1_0.html#rfc.section.5 Federation API] |
− | |||
− | |||
*Opzionale: individuare soluzioni innovative per la riqualifica dei processi di registrazione e validazione delle entità, individuare casi di uso per gli operatori di servizio (tools, signing services...) | *Opzionale: individuare soluzioni innovative per la riqualifica dei processi di registrazione e validazione delle entità, individuare casi di uso per gli operatori di servizio (tools, signing services...) | ||
3. Valutare l'adozione di soluzioni Proxy/[https://wiki.surfnet.nl/display/surfconextdev/OpenID+Connect+authentication+flow Gateway] per l'interfacciamento ed ibridazione di infrastrutture SAML2/OIDC. | 3. Valutare l'adozione di soluzioni Proxy/[https://wiki.surfnet.nl/display/surfconextdev/OpenID+Connect+authentication+flow Gateway] per l'interfacciamento ed ibridazione di infrastrutture SAML2/OIDC. | ||
+ | Task opzionali: | ||
− | + | #Considerare l'adozione di [https://github.com/IdentityPython/SATOSA SaToSa]; | |
− | + | #Sviluppare o implementare alcuni esempi al di sopra delle librerie ufficiali jwtconnect.io, esempi di implementazioni certificate: | |
*https://github.com/rohe/oidc-op | *https://github.com/rohe/oidc-op | ||
Riga 60: | Riga 68: | ||
I primi due obiettivi sono di comune interesse per il gruppo di lavoro. L'obiettivo numero tre ed il numero quattro possono considerare dei sottogruppi di almeno due partecipanti. | I primi due obiettivi sono di comune interesse per il gruppo di lavoro. L'obiettivo numero tre ed il numero quattro possono considerare dei sottogruppi di almeno due partecipanti. | ||
− | == | + | ==Conclusione dei lavori e risultati raggiunti== |
− | I lavori del gruppo sono stati | + | I lavori del gruppo sono stati ufficialmente conclusi in data 6 Novembre 2020 e hanno prodotto i seguenti risultati: |
− | |||
− | |||
− | |||
− | |||
− | + | '''Documenti''' | |
− | |||
− | |||
− | + | * [https://docs.google.com/document/d/1RdiQo4JNJOkbew19z57n7u4T2Xi2feZ3pa93orXggkc Description of an OpenID Connect Session (idpy jwtconnect.io)] | |
− | + | * [https://docs.google.com/document/d/19XctNSRLYNG_uD1Bi6T7VVbWDtjq_Dhrlkul887OuN4 Shibboleth CSCfi OIDC - Configuration experiences] | |
− | * | ||
− | + | '''Artefatti''' | |
+ | |||
+ | * [https://github.com/peppelinux/django-oidc-op django-oidc-op] | ||
+ | * [https://github.com/peppelinux/Ansible-Shibboleth-IDP-SP-Debian/tree/oidc Ansible playbook (Shib IdP and SP SAML2 and CSCfi OIDC)] | ||
+ | |||
+ | '''Test e prototipi''' | ||
+ | |||
+ | * OIDC Federation 1.0 PoC (setup e analisi di [https://github.com/rohe/fedservice fedservice]) | ||
+ | |||
+ | '''Risorse di terze parti consigliate''' | ||
+ | |||
+ | * [https://docs.google.com/document/d/1b-Mlet3Lq7qKLEf1BnHJ4nL1fq-vMe7fzpXyrq2wp08 White Paper for implementation of mappings between SAML 2.0 and OpenID Connect in Research and Education] | ||
==Durata== | ==Durata== | ||
Riga 84: | Riga 96: | ||
Quando: Il gruppo di lavoro si riunisce in video conferenza ogni 2 settimane, di Giovedì dalle 15:00 alle 16:00, su Google Meet. | Quando: Il gruppo di lavoro si riunisce in video conferenza ogni 2 settimane, di Giovedì dalle 15:00 alle 16:00, su Google Meet. | ||
− | [https://calendar.google.com/ | + | [https://calendar.google.com/calendar?cid=Z2l1c2VwcGUuZGVtYXJjb0B1bmljYWwuaXQ google calendar] |
==Strumenti e link utili== | ==Strumenti e link utili== | ||
Riga 117: | Riga 129: | ||
Risorse utili e documentazione prodotta da altri gruppi di lavoro: | Risorse utili e documentazione prodotta da altri gruppi di lavoro: | ||
− | * [https://spaces.at.internet2.edu/display/ODWG/OIDC-OAuth+Deployment+Profiles OIDC-OAuth Deployment Profiles] | + | |
− | * [https://github.com/daserzw/oidc-edu-wg Repository oidc-edu-wg] | + | *[https://spaces.at.internet2.edu/display/ODWG/OIDC-OAuth+Deployment+Profiles OIDC-OAuth Deployment Profiles] |
− | * [https://cernbox.cern.ch/index.php/s/f4HFP24SReWKUGc#office WLCG Token schema slides (Hannah Short)] | + | *[https://github.com/daserzw/oidc-edu-wg Repository oidc-edu-wg] |
− | * [https://docs.google.com/document/d/1FQcZEUsjRjVxR5X5uii_Ma9adFIe9ER3b4WE-wYo7hU/edit# R&E id_token and userinfo endpoint claims ] | + | *[https://cernbox.cern.ch/index.php/s/f4HFP24SReWKUGc#office WLCG Token schema slides (Hannah Short)] |
− | * [https://docs.google.com/document/d/1cNm4nBl9ELhExwLxswpxLLNTuz8pT38-b_DewEyEWug/edit#heading=h.3sywvn92h9qr WLCG Common JWT Profiles] | + | *[https://docs.google.com/document/d/1FQcZEUsjRjVxR5X5uii_Ma9adFIe9ER3b4WE-wYo7hU/edit# R&E id_token and userinfo endpoint claims] |
− | * [https://lists.refeds.org/sympa/arc/refeds/2019-05/msg00002.html [refeds] OIDC eduPerson and custom claims] | + | *[https://docs.google.com/document/d/1cNm4nBl9ELhExwLxswpxLLNTuz8pT38-b_DewEyEWug/edit#heading=h.3sywvn92h9qr WLCG Common JWT Profiles] |
− | * [https://docs.google.com/document/d/1b-Mlet3Lq7qKLEf1BnHJ4nL1fq-vMe7fzpXyrq2wp08/edit# REFEDs OIDCre - White Paper for implementation mappings between SAML 2.0 and OpenID Connect in Research and Education] | + | *[https://lists.refeds.org/sympa/arc/refeds/2019-05/msg00002.html [refeds] OIDC eduPerson and custom claims] |
+ | *[https://docs.google.com/document/d/1b-Mlet3Lq7qKLEf1BnHJ4nL1fq-vMe7fzpXyrq2wp08/edit# REFEDs OIDCre - White Paper for implementation mappings between SAML 2.0 and OpenID Connect in Research and Education] | ||
+ | *[https://docs.google.com/document/d/1o6uLlUW59F61mdImPGMCAwBR4KH4lfQIaLMfaqhOW3Q/edit# AARC-G025 Guidelines for expressing affiliation information] | ||
<br /> | <br /> | ||
==Riunioni== | ==Riunioni== | ||
− | + | Per partecipare fai clic su questo link: https://meet.google.com/ind-ikpq-igg | |
+ | Per partecipare telefonicamente, componi +1 484-424-4579 e digita il PIN: 594 908 435# | ||
+ | |||
+ | Verbali di riunione: https://drive.google.com/drive/folders/1SeHS1obY7DREXoNqjOlzsA8jdOIEh27R?usp=sharing | ||
+ | |||
+ | ----------------------------------- | ||
− | + | '''7 Novembre 2019''', ore 15:00-16:00 | |
− | |||
*argomenti: presentazioni, esperienze dei partecipanti connesse ad AAI, presentazione degli obiettivi. | *argomenti: presentazioni, esperienze dei partecipanti connesse ad AAI, presentazione degli obiettivi. | ||
*invitati: componenti del gruppo di lavoro. | *invitati: componenti del gruppo di lavoro. | ||
− | * | + | |
+ | '''Presenti''' | ||
+ | |||
+ | *Giuseppe De Marco | ||
+ | *Maurizio Festi | ||
+ | *Michele D'Amico | ||
+ | *Marco Pirovano | ||
+ | *Dario Pilori | ||
+ | *Antonio Florio | ||
+ | *Stefano Zanelli | ||
+ | |||
+ | --------------------------------------- | ||
+ | |||
+ | '''21 Novembre 2019''', ore 15:00-16:00 | ||
+ | |||
+ | *argomenti: definizione di un profilo applicativo OIDC ideale, analisi di [https://tools.ietf.org/html/rfc7636 PKCE] e [https://tools.ietf.org/html/rfc7662 Introspection endpoint], istruzioni sui gruppi di lavoro. | ||
+ | |||
+ | '''Presenti''' | ||
+ | |||
+ | *Giuseppe De Marco | ||
+ | *Maurizio Festi | ||
+ | *Michele D'Amico | ||
+ | *Angelo Rossini | ||
+ | *Davide Vaghetti | ||
+ | *Stefano Zanelli | ||
+ | |||
+ | --------------------------------------- | ||
+ | |||
+ | '''5 Dicembre 2019''', ore 15:00-16:00 | ||
+ | |||
+ | *argomenti: avvio lavori sotto gruppi, discussione casi di uso implementativi al di sopra di "GÉANT OIDC-Plugin for Shibboleth IdP 1.0.0". Discussione stato di avanzamento di django-oidc-op. Modalità operative per l'esecuzione degli unit tests. | ||
+ | |||
+ | '''Presenti''' | ||
+ | |||
+ | *Giuseppe De Marco | ||
+ | *Maurizio Festi | ||
+ | *Angelo Rossini | ||
+ | *Davide Vaghetti | ||
+ | *Marco Pirovano (uscita anticipata) | ||
+ | |||
+ | --------------------------------------- | ||
+ | |||
+ | '''19 Dicembre 2019''', ore 15:00-16:17 | ||
+ | |||
+ | *argomenti: stato di avanzamento setup e sviluppi shibboleth OIDC extension e oidcendpoint. | ||
+ | |||
+ | '''Presenti''' | ||
+ | |||
+ | *Giuseppe De Marco | ||
+ | *Maurizio Festi | ||
+ | *Angelo Rossini | ||
+ | *Stefano Zanelli | ||
+ | *Marco Pirovano | ||
+ | *Nunzio Napolitano | ||
+ | |||
+ | --------------------------------------- | ||
+ | |||
+ | '''2 Gennaio 2020''', ore 15:00-16:45 | ||
+ | |||
+ | *argomenti: unit tests, custom scopes, analisi attributi spid, analisi casi d'uso, riepilogo obiettivi e precedenti riunioni. | ||
+ | |||
+ | '''Presenti''' | ||
+ | |||
+ | *Giuseppe De Marco | ||
+ | *Michele D'Amico | ||
+ | |||
+ | --------------------------------------- | ||
+ | |||
+ | '''16 Gennaio 2020''', ore 15:00-16:45 | ||
+ | |||
+ | *argomenti: Setup Shibboleth OIDC extension, OIDC Metadata Entity Extension | ||
+ | |||
+ | '''Presenti''' | ||
+ | |||
+ | *Giuseppe De Marco | ||
+ | *Maurizio Festi | ||
+ | *Angelo Rossini | ||
+ | *Stefano Zanelli | ||
+ | |||
+ | --------------------------------------- | ||
+ | |||
+ | '''30 Gennaio 2020''', ore 15:00-16:37 | ||
+ | |||
+ | *argomenti: OIDC Connect Federation 1.0, introduzione. Bilancio delle esperienze di gruppo, conclusione profilo OIDC ideale. | ||
+ | |||
+ | '''Presenti''' | ||
+ | |||
+ | *Maurizio Festi | ||
+ | *Angelo Rossini | ||
+ | *Giuseppe De Marco | ||
+ | *Michele D’Amico | ||
+ | *Antonio Florio | ||
+ | *Nunzio Napolitano | ||
+ | |||
+ | --------------------------------------- | ||
+ | |||
+ | '''13 Febbraio 2020''', ore 15:00-15:15 | ||
+ | |||
+ | *argomenti: OIDC Connect Federation 1.0, analisi casi di uso. | ||
+ | |||
+ | '''Presenti''' | ||
+ | |||
+ | *Giuseppe De Marco | ||
+ | |||
+ | Riunione annullata per assenza dei partecipanti al gruppo di lavoro. | ||
+ | |||
+ | --------------------------------------- | ||
+ | |||
+ | '''27 Febbraio 2020''', ore 15:00-16:45 | ||
+ | |||
+ | *argomenti: OIDC Connect Federation 1.0, federation type e metodo di collezione degli entity statements per la costruzione della chain of trust. | ||
+ | |||
+ | '''Presenti''' | ||
+ | |||
+ | *Giuseppe De Marco | ||
+ | *Maurizio Festi | ||
+ | |||
+ | --------------------------------------- | ||
+ | |||
+ | '''12 Marzo 2020''', ore 15:00-16:10 | ||
+ | |||
+ | *argomenti: OIDC Connect Federation 1.0, aggiornamenti sul draft, introduzione di Davide ai Trust mark nel contesto delle federazioni multilaterali. | ||
+ | |||
+ | '''Presenti''' | ||
+ | |||
+ | *Giuseppe De Marco | ||
+ | *Angelo Rossini | ||
+ | *Maurizio Festi | ||
+ | *Davide Vaghetti | ||
+ | |||
+ | |||
+ | '''18 Giugno 2020''', ore 15:00-16:10 | ||
+ | |||
+ | *argomenti: Sviluppo prototipo Shib IdP v4 con oidc extension. Vedi https://github.com/peppelinux/Ansible-Shibboleth-IDP-SP-Debian/tree/shibidp4 | ||
+ | |||
+ | '''Presenti''' | ||
+ | |||
+ | *Giuseppe De Marco | ||
+ | *Marco Pirovano | ||
+ | *Maurizio Festi | ||
+ | *Nunzio Napolitano | ||
+ | *Marco Malavolti |
Versione attuale delle 12:50, 10 nov 2020
Il gruppo di lavoro OIDC (OpenID Connect) si occupa di analizzare ed esemplificare l'adozione di OIDC in contesto federativo.
Per partecipare inviate una email ai coordinatori del gruppo.
Indice
Componenti
Questo gruppo di Lavoro si avvarrà di un numero minimo di 5 componenti.
Giuseppe De Marco (coordinatore) | giuseppe.demarco@unical.it |
Maurizio Festi (coordinatore) | maurizio.festi@unitn.it |
Michele D'Amico | michele.damico@agid.gov.it |
Marco Pirovano | marco.pirovano@unibocconi.it |
Angelo Rossini | a.rossini@cineca.it |
Dario Pilori | d.pilori@inrim.it |
Antonio Florio | florio@agid.gov.it |
Stefano Zanelli | stefano.zanelli@unitn.it |
Davide Vaghetti | davide.vaghetti@garr.it |
Nunzio Napolitano | nunzio.napolitano@uniparthenope.it |
Obiettivi
Il gruppo vuole analizzare i casi di uso e le tecniche federative al di sopra di OpenID Connect Federation, avvalendosi della partecipazione degli operatori di servizio delle federazioni, tecnologi e sviluppatori esperti del settore delle IAM (Identity and Access Management). Gli obiettivi possono essere riassunti come segue:
1.Analizzare il draft riguardante OpenID Connect in contesto Federativo;
2.Sviluppare casi di uso e scenari federativi, considerando le innovazioni apportate da:
- Web Finger, dynamic discovery e dynamic client registration, Trust Chains, Federation API
- Opzionale: individuare soluzioni innovative per la riqualifica dei processi di registrazione e validazione delle entità, individuare casi di uso per gli operatori di servizio (tools, signing services...)
3. Valutare l'adozione di soluzioni Proxy/Gateway per l'interfacciamento ed ibridazione di infrastrutture SAML2/OIDC. Task opzionali:
- Considerare l'adozione di SaToSa;
- Sviluppare o implementare alcuni esempi al di sopra delle librerie ufficiali jwtconnect.io, esempi di implementazioni certificate:
- https://github.com/rohe/oidc-op
- https://github.com/openid/JWTConnect-Python-OidcRP
- https://github.com/peppelinux/django-oidc-op
Opzionale: Tracciare lo stato di sviluppo e la fattibilità implementativa di Shibboleth OIDC extension per ShibIdP
- considerare ulteriori alternative, certificabili, in PHP, Javascript e altri linguaggi.
4. Individuare le soluzioni applicative usabili all'interno della federazione, applicando la OpenID Conformance test suite. Produrre un esempio di esecuzione degli unit test.
I primi due obiettivi sono di comune interesse per il gruppo di lavoro. L'obiettivo numero tre ed il numero quattro possono considerare dei sottogruppi di almeno due partecipanti.
Conclusione dei lavori e risultati raggiunti
I lavori del gruppo sono stati ufficialmente conclusi in data 6 Novembre 2020 e hanno prodotto i seguenti risultati:
Documenti
- Description of an OpenID Connect Session (idpy jwtconnect.io)
- Shibboleth CSCfi OIDC - Configuration experiences
Artefatti
Test e prototipi
- OIDC Federation 1.0 PoC (setup e analisi di fedservice)
Risorse di terze parti consigliate
Durata
6 mesi a partire dalla data di inizio ufficiale che è 7 Novembre 2019.
Riunioni
Quando: Il gruppo di lavoro si riunisce in video conferenza ogni 2 settimane, di Giovedì dalle 15:00 alle 16:00, su Google Meet.
Strumenti e link utili
- repository del codice: github.
- editing condiviso documenti: google docs, github.
- canali di comunicazione: email, telegram, slack.
Documenti
- OpenID Connect Core Specifications
- OpenID Connect Discovery 1.0
- OpenID Connect Dynamic Client Registration
- OIDC Federation draft 09
- WebFinger
- JWT supported claims
- JSON Web Encryption (JWE) (RFC 7516)
- JSON Web Key (JWK) (RFC 7517)
- JSON Web Token (JWT) (RFC 7519)
- JSON Web Token (JWT) Profile For OAuth 2.0 Client Authentication and Authorization Grants (RFC 7523)
- OAuth 2.0 Threat Model and Security Considerations (RFC6819)
- Assertion Framework for OAuth 2.0 Client Authentication and Authorization Grants (RFC 7521)
- Security Assertion Markup Language (SAML) 2.0 Profile for OAuth 2.0 Client Authentication and Authorization Grants (RFC 7522)
Risorse utili
Altri gruppi di lavoro:
Risorse utili e documentazione prodotta da altri gruppi di lavoro:
- OIDC-OAuth Deployment Profiles
- Repository oidc-edu-wg
- WLCG Token schema slides (Hannah Short)
- R&E id_token and userinfo endpoint claims
- WLCG Common JWT Profiles
- [refeds OIDC eduPerson and custom claims]
- REFEDs OIDCre - White Paper for implementation mappings between SAML 2.0 and OpenID Connect in Research and Education
- AARC-G025 Guidelines for expressing affiliation information
Riunioni
Per partecipare fai clic su questo link: https://meet.google.com/ind-ikpq-igg Per partecipare telefonicamente, componi +1 484-424-4579 e digita il PIN: 594 908 435#
Verbali di riunione: https://drive.google.com/drive/folders/1SeHS1obY7DREXoNqjOlzsA8jdOIEh27R?usp=sharing
7 Novembre 2019, ore 15:00-16:00
- argomenti: presentazioni, esperienze dei partecipanti connesse ad AAI, presentazione degli obiettivi.
- invitati: componenti del gruppo di lavoro.
Presenti
- Giuseppe De Marco
- Maurizio Festi
- Michele D'Amico
- Marco Pirovano
- Dario Pilori
- Antonio Florio
- Stefano Zanelli
21 Novembre 2019, ore 15:00-16:00
- argomenti: definizione di un profilo applicativo OIDC ideale, analisi di PKCE e Introspection endpoint, istruzioni sui gruppi di lavoro.
Presenti
- Giuseppe De Marco
- Maurizio Festi
- Michele D'Amico
- Angelo Rossini
- Davide Vaghetti
- Stefano Zanelli
5 Dicembre 2019, ore 15:00-16:00
- argomenti: avvio lavori sotto gruppi, discussione casi di uso implementativi al di sopra di "GÉANT OIDC-Plugin for Shibboleth IdP 1.0.0". Discussione stato di avanzamento di django-oidc-op. Modalità operative per l'esecuzione degli unit tests.
Presenti
- Giuseppe De Marco
- Maurizio Festi
- Angelo Rossini
- Davide Vaghetti
- Marco Pirovano (uscita anticipata)
19 Dicembre 2019, ore 15:00-16:17
- argomenti: stato di avanzamento setup e sviluppi shibboleth OIDC extension e oidcendpoint.
Presenti
- Giuseppe De Marco
- Maurizio Festi
- Angelo Rossini
- Stefano Zanelli
- Marco Pirovano
- Nunzio Napolitano
2 Gennaio 2020, ore 15:00-16:45
- argomenti: unit tests, custom scopes, analisi attributi spid, analisi casi d'uso, riepilogo obiettivi e precedenti riunioni.
Presenti
- Giuseppe De Marco
- Michele D'Amico
16 Gennaio 2020, ore 15:00-16:45
- argomenti: Setup Shibboleth OIDC extension, OIDC Metadata Entity Extension
Presenti
- Giuseppe De Marco
- Maurizio Festi
- Angelo Rossini
- Stefano Zanelli
30 Gennaio 2020, ore 15:00-16:37
- argomenti: OIDC Connect Federation 1.0, introduzione. Bilancio delle esperienze di gruppo, conclusione profilo OIDC ideale.
Presenti
- Maurizio Festi
- Angelo Rossini
- Giuseppe De Marco
- Michele D’Amico
- Antonio Florio
- Nunzio Napolitano
13 Febbraio 2020, ore 15:00-15:15
- argomenti: OIDC Connect Federation 1.0, analisi casi di uso.
Presenti
- Giuseppe De Marco
Riunione annullata per assenza dei partecipanti al gruppo di lavoro.
27 Febbraio 2020, ore 15:00-16:45
- argomenti: OIDC Connect Federation 1.0, federation type e metodo di collezione degli entity statements per la costruzione della chain of trust.
Presenti
- Giuseppe De Marco
- Maurizio Festi
12 Marzo 2020, ore 15:00-16:10
- argomenti: OIDC Connect Federation 1.0, aggiornamenti sul draft, introduzione di Davide ai Trust mark nel contesto delle federazioni multilaterali.
Presenti
- Giuseppe De Marco
- Angelo Rossini
- Maurizio Festi
- Davide Vaghetti
18 Giugno 2020, ore 15:00-16:10
- argomenti: Sviluppo prototipo Shib IdP v4 con oidc extension. Vedi https://github.com/peppelinux/Ansible-Shibboleth-IDP-SP-Debian/tree/shibidp4
Presenti
- Giuseppe De Marco
- Marco Pirovano
- Maurizio Festi
- Nunzio Napolitano
- Marco Malavolti