bug: unable to login if authentication is delegated to another CAS server

Aperta
#6,833 1 commento 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
3/5
Tempo stimato
1-2 giorni
Idoneità per principianti
45/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Ferma
Stack tecnologico
react-native, typescript

Direzione di ricerca

Inizia da app/views/AuthenticationWebView.tsx alla riga collegata e segui il modo in cui il WebView gestisce un ticket CAS nell’URL. Riproduci il flusso delegato a due CAS descritto nell’issue, quindi verifica che il WebView rimanga aperto durante l’autenticazione a due fattori e si chiuda solo dopo aver raggiunto il servizio richiesto.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

🐛 bug
Describe the Bug

In our authentication system, we have 2 CAS servers (one for first-factor authentication, the other for MFA).
When the first factor is validated, CAS redirects to the CAS server dedicated to the second factor (with the ticket of the first CAS server in the URL), the Rocket.Chat application considers the authentication successful and avoids validating the MFA.
https://github.com/RocketChat/Rocket.Chat.ReactNative/blob/788cb8dffe02ea2e85c4b93e0a90e5f2473c7356/app/views/AuthenticationWebView.tsx#L109

https://github.com/user-attachments/assets/0a366475-b43e-4940-bf6a-b6a4466d114f

Steps to Reproduce
  1. Select a Rocket.Chat server whose CAS server delegates to another CAS server
  2. Validate the first authentication
    It is not possible to validate the second factor.
Expected Behavior

The Rocket.Chat mobile application should only close the AuthenticationWebView once you've arrived at the requested service.

Actual Behavior

The Rocket.Chat mobile application closes the AuthenticationWebView when a CAS ticket is found in the URL
https://github.com/RocketChat/Rocket.Chat.ReactNative/blob/788cb8dffe02ea2e85c4b93e0a90e5f2473c7356/app/views/AuthenticationWebView.tsx#L109

Rocket.Chat Server Version

7.1.0

Rocket.Chat App Version

4.67.0.107747

Device Name

Apple iPad 9

OS Version

iPadOS 18.7.2

Additional Context

No response

Lingua principale
TypeScript
Stelle
2.4k
Fork
1.5k
Merge medio
1g 15h
PR unite (30g)
29

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di RocketChat/Rocket.Chat.ReactNative

Tutte le issue di RocketChat/Rocket.Chat.ReactNative

Issue simili

Altre issue su TypeScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.