`sso overrides groups` funziona con Oauth2?

I would like to use this feature. We’re on the Business hosted plan, so SAML is not available to us, so we’re using Oauth2 / OpenID Connect. I believe I have everything configured correctly (sso overrides groups is on, and oauth2 scope is set to openid profile email https://id.fedoraproject.org/scope/groups).

I am a little confused about how Discourse uses the word SSO and what options appear where. However, we’re using sso overrides username and that works. Should I expect this to as well?

1 Mi Piace

L’impostazione sso overrides groups non funziona con OAuth2. Funziona solo con l’implementazione di SSO di Discourse: Setup DiscourseConnect - Official Single-Sign-On for Discourse (sso). Stiamo procedendo a rinominare Discourse SSO in DiscourseConnect per evitare confusione riguardo a questo problema.

1 Mi Piace

Ouch, che peccato. Il cambio di nome aiuterà sicuramente a ridurre la confusione, ma non soddisfa le mie esigenze. Questa limitazione è intenzionale o semplicemente non è stata ancora implementata?

L’impostazione utilizza un percorso di codice separato rispetto a quello utilizzato per gli accessi OAuth2. La sincronizzazione dei gruppi tramite OAuth2 non è stata ancora implementata. La possibilità di sincronizzare i gruppi di Discourse con quelli di un sito esterno presenta numerosi casi d’uso con Discourse, quindi si spera che possa essere implementata in futuro. Per ora, l’unica opzione disponibile è gestire l’iscrizione ai gruppi tramite l’API.

4 Mi Piace

Quindi, abbiamo alcune potenziali patch molto preliminari per implementare groups con OAuth2:

:warning: Tuttavia, dato che stiamo utilizzando il piano ospitato, non disponiamo di un ambiente di staging rapido per testarle, quindi sono puramente teoriche. Cercherò di allestire un ambiente del genere a breve, ma letteralmente non è il lavoro principale di nessuno, quindi se qualcuno potesse aiutare a revisionarle e testarle, sarebbe fantastico.

3 Mi Piace

Se inviate quelle come PR al nostro repository, le esamineremo. Non possiamo garantire che vengano fuse, ma almeno verrà effettuata una revisione.

3 Mi Piace

Fantastico, grazie. Cercherò di far provare a qualcuno in locale o a un altro gentile volontario se funzionano davvero, prima di rimuovere l’ :warning:.

2 Mi Piace

Non ho avuto tempo di lavorare su questo (o di trovare qualcuno che possa…). Se qualcuno che legge questo volesse aiutare, sarebbe fantastico.

Una volta completato Managing group membership via authentication - #14 by mattdm, sicuramente valuteremo di farlo funzionare con il plugin OAuth2 :slight_smile:

3 Mi Piace

Ho implementato le modifiche collegate sopra e non sembrano aver rotto Discourse. C’è una documentazione su come eseguire i test in modo da poter verificare che le modifiche non abbiano rotto nulla?

1 Mi Piace

Bene! A parte il fatto di rompere le cose, funzionano?

In breve, non lo so finché non provo a usare un sistema mock sul Fedora Accounts System (FAS) — o su qualche altro sistema OIDC — per testarlo. Sarei comunque interessato a imparare come eseguire il smoke test di Discourse, che sembra girare su un browser Chrome headless, ma sto faticando a trovare informazioni al riguardo.

C’è qualcuno di Discourse che sa dove potrei trovare le istruzioni per eseguire uno smoke test?

Potrebbe qualcuno di Fedora fornirmi un sistema FAS mock da usare per i test?

1 Mi Piace

Hmm. Il sistema degli account Fedora è… piuttosto grande. (Ma (dalla grande aggiornamento di quest’anno) utilizza FreeIPA sotto il cofano, quindi in teoria chiunque potrebbe crearne uno simile.)

Forse potremmo collegare il tuo Discourse di test al vero sistema degli account Fedora?

Ehi gente! Posso aggiungervi alla nostra istanza Oauth2 di staging, vi aiuterebbe?

1 Mi Piace