Rocket.Chat SSO + plugin embed

I have added this feature to the plugin. Just update it to the latest version and then set the discourse rocketchat default channel setting to empty.

1 Mi Piace

That’s great! I’m going to update and test it as soon as I will be back to my place next week.
Thank you again!

Questo plugin sta causando alcuni problemi da parte mia a tutti gli utenti:

Dopo aver premuto il pulsante Login CAS, compare un popup con il seguente link

rocketchat.domain/_cas/BJZ6ef4aSDdeEf5C?ticket=c27a3525gg4ggff7f859f4a3a37c

(Ho randomizzato alcune parti dei token incollati per motivi di sicurezza).

è una pagina bianca che non si chiude da sola e il login non procede a meno che l’utente non chiuda la finestra. Una volta che l’utente chiude questa finestra popup, il login procede e tutto funziona bene in seguito. Succede ogni volta che qualcuno tenta di accedere, anche per gli utenti che hanno effettuato l’accesso in precedenza.

Sei riuscito a far funzionare il reindirizzamento automatico? Ho provato lo script personalizzato di @RGJ e anche questo CAS Plugin: Add direct login redirect for a CAS-enabled RC instance · Issue #2327 · RocketChat/Rocket.Chat · GitHub, ma senza successo.

C’è uno script inline lì per chiudere quella finestra che probabilmente non è stato aggiunto alla whitelist nella tua CSP.
Come soluzione rapida, sul lato Rocket.Chat, vai su Admin - Generale e disabilita “Abilita Content-Security-Policy”. Tieni presente che ciò potrebbe esporre il tuo sito a problemi di sicurezza. Dovresti affrontare il problema sottostante.

Si prega di limitare tutti i report e le richieste qui ai problemi relativi al plugin. Qualsiasi errore che si verifica all’interno di Rocket.Chat o sul tuo hostname Rocket.Chat, dovrebbe essere considerato un problema di Rocket.Chat e non un problema di Discourse o del plugin.

1 Mi Piace

Ho testato la nuova versione e funziona benissimo! Grazie mille!

1 Mi Piace

@Mr.X_Mr.X, stavo riscontrando lo stesso problema con la finestra vuota che non si chiudeva e stavo pensando che il problema fosse dovuto a qualcosa che stavo facendo di sbagliato nella configurazione CAS.
Ho disabilitato Content-Security-Policy e ora le finestre bianche si chiudono automaticamente. Grazie Richard per aver spiegato dov’era il problema!
Tuttavia, sarebbe fantastico poter capire come aggiungere l’eccezione e abilitare questa funzione di sicurezza.

@RGJ Scusa se chiedo, ma questo problema non è correlato al tuo plugin? Lo script inline non è incorporato nel tuo plugin? O stavi parlando di uno script inline aggiunto manualmente sul lato rocket chat?
Grazie mille ancora

No, è nel popup CAS all’interno di Rocket.Chat (puoi vedere che l’URL della finestra popup è sull’hostname di RC).

va bene, scusa, prometto che non farò altre domande dopo questa singola:
quindi suggeriresti di aggiungere una whitelist alla CSP di rocketchat (probabilmente aggiungendo il dominio discourse, immagino)?

No, questo è al 100% un problema lato Rocket.Chat. Il Javascript di Rocket.Chat sta cercando di chiudere una finestra popup di Rocket.Chat ma non gli è consentito dalla CSP di Rocket.Chat.
Succede con ogni popup di accesso in Rocket.Chat come CAS o OAuth2. Se cerchi, troverai anche altri report.

Ottimo. Grazie mille ancora per la tua spiegazione!

Ci sarebbe un modo per avere canali specifici per argomento? Quindi, se il plugin fosse visualizzato su questo argomento, il canale verrebbe automaticamente impostato su “rocket-chat-sso-embed-plugin-for-discourse”?