Ho letto l’argomento, Group trust level dove si dice,
Così come questo argomento più vecchio, Should losing group membership unlock trust level?
Dove la situazione descritta in gran parte corrisponde alla mia esperienza,
Ma, quello che ho riscontrato nella mia istanza di test di Discourse è questo…
Con tutte le impostazioni di Livello di Fiducia predefinite, ho un account TL1 (U) e un gruppo chiamato tl3 che concede Trust_Level_3.
- Condizioni iniziali
- Livello di Fiducia:
1: utente baseSbloccato - Gruppi Automatici:
trust_level_0,trust_level_1 - Gruppi Personalizzati: Nessuno
- Livello di Fiducia:
- Aggiungi U a tl3
- Livello di Fiducia:
3: RegolareSbloccato - Gruppi Automatici:
trust_level_0,trust_level_1,trust_level_2,trust_level_3 - Gruppi Personalizzati: tl3
- Livello di Fiducia:
- Rimuovi U da tl3
- Livello di Fiducia:
2: MembroSbloccato - Gruppi Automatici:
trust_level_0,trust_level_1,trust_level_2,trust_level_3 - Gruppi Personalizzati: Nessuno
- NOTA: Nonostante abbia un livello di fiducia 2, l’utente è ancora nel gruppo automatico
trust_level_3. Con la comprensione che un utente non può essere retrocesso a TL1 senza un livello di fiducia bloccato, il risultato atteso qui è che l’utente dovrebbe perdere immediatamente l’appartenenza al gruppo automaticotrust_level_2.
- Livello di Fiducia:
- Blocca il livello di fiducia di U
- Livello di Fiducia:
2: MembroBloccato - Gruppi Automatici:
trust_level_0,trust_level_1,trust_level_2,trust_level_3 - Gruppi Personalizzati: Nessuno
- NOTA: Nonostante abbia un Livello di Fiducia di
2: Membro, l’utente è ancora nel gruppo automaticotrust_level_3.
- Livello di Fiducia:
- Sblocca il livello di fiducia di U
- Livello di Fiducia:
1: BaseSbloccato - Gruppi Automatici:
trust_level_0,trust_level_1 - Gruppi Personalizzati: Nessuno
- Livello di Fiducia:
Quindi, quando si disiscrive un utente da un gruppo, il Livello di Fiducia viene ricalcolato automaticamente e istantaneamente, ma l’appartenenza al gruppo automatico non viene ricalcolata a meno che il livello di fiducia dell’utente non subisca un evento di sblocco.
La mia ipotesi è che le appartenenze ai gruppi automatici vengano calcolate a livello di sistema per tutti gli utenti una volta al giorno e le appartenenze ai gruppi automatici verranno corrette a quel punto. Ma sembra che le appartenenze ai gruppi automatici dovrebbero essere attivate o alla rimozione da un gruppo con un effetto sul livello di fiducia o attivate immediatamente ad ogni modifica del livello di fiducia, non solo ad un aumento del livello di fiducia.
Quindi la chiamata API backend a,
POST {{site}}/admin/users/{{userId}}/groups
aggiorna le appartenenze ai gruppi automatici, ma
DELETE {{site}}/admin/users/{{usedId}}/groups/{{groupId}}
non lo fa, il che sembra un bug, specialmente se si utilizzano gruppi automatici di livello di fiducia per il controllo degli accessi.
E, per completezza, ovviamente le chiamate a,
PUT {{site}}/admin/users/{{userId}}/trust_level
che vengono invocate quando si modifica manualmente il livello di fiducia di un utente nell’interfaccia di amministrazione, ricalcolano immediatamente le appartenenze ai gruppi automatici come previsto.

