Gli utenti non staff possono applicare tag solo staff

Ho aggiornato il nostro sito ieri e ho appena notato che un utente non appartenente allo staff ha applicato il tag ‘in evidenza’ al suo post. Questo non dovrebbe essere possibile, poiché è definito come un tag riservato allo staff. Quando ho impersonato l’utente, ho effettivamente potuto accedere ai tag riservati durante la pubblicazione. Ho provato a riprodurre il problema qui su meta, ma credo che i tag non siano disponibili per gli utenti normali?

Ho provato a riprodurre il problema sul mio sito di sviluppo locale, ma finora non ci sono riuscito. Sai se il problema si verifica in tutte le categorie del tuo sito o solo in una categoria specifica in cui gli utenti non membri dello staff possono aggiungere tag per lo staff? Qualsiasi suggerimento su come riprodurre il problema sarebbe utile.

Ok, approfondirò per capire cosa sta succedendo e ti farò sapere. Potrebbe richiedere un po’ di tempo.

Ok, ho fatto dei test con un utente TL-0 e uno TL-1 in modalità provvisoria e riesco ad accedere al tag staff per ogni categoria del nostro forum. Lo stesso vale per gli altri tag presenti nella nostra lista riservata allo staff. Ho anche reimpostato le autorizzazioni del gruppo tag ‘solo per lo staff’ su ‘i tag possono essere usati da tutti’ e poi di nuovo su ‘solo i seguenti gruppi possono usarli’, ma non ha fatto alcuna differenza. C’è qualcos’altro che potrei testare?

Hai definito altri gruppi di tag, o lo screenshot sopra è l’unico gruppo presente sul tuo sito? Gli utenti con cui hai testato questa funzionalità fanno parte di altri gruppi?

È possibile creare più gruppi di tag con regole contraddittorie. Se un utente ha il permesso di utilizzare un tag in qualsiasi gruppo di tag, questo annulla le regole di qualsiasi altro gruppo che gli impediscono di utilizzarlo.

Questi sono tutti i gruppi che utilizzo; il test che ho eseguito è stato effettuato con un utente base che non è membro di nessun gruppo.

Tag comuni: disponibili per tutti

Eventi: utilizzabili solo nella categoria Eventi:

Quando dici ‘accedere’, intendi che puoi aggiungerli ai topic, o che puoi visualizzarli e cliccarci sopra, ecc.?

I tag nel tuo gruppo di tag ‘Staff Tags’ (ba-tips, cant-reproduce, featured, ecc.) possono essere aggiunti ai topic solo dagli utenti appartenenti al gruppo staff, ma sono visibili a tutti. Questo significa che chiunque può vedere quei tag in alto nei topic, cliccarci sopra per vedere altri topic contrassegnati con quello stesso tag, ecc.

Se un utente TL0 riesce ad aggiungere un tag di ‘Staff Tags’ (ad esempio ‘ba-tips’) a un topic, si tratta di un problema. Ho ricreato i tag e i gruppi di tag come mostrato nelle tue screenshot sulla mia istanza locale di Discourse (limitando i tag in ogni gruppo ai primi tre presenti in ciascuno degli screenshot sopra), e i miei utenti TL0/TL1 non riescono ad aggiungere ‘ba-tips’ a un topic tramite il pulsante ‘Nuovo topic’, né creando un topic e poi modificandolo. Riesci ad aggiungere i tag tramite un metodo o un percorso UI diverso?

Grazie per la risposta, Jamie. Scusa se non sono stato abbastanza specifico. Ho appena aggiornato all’ultima versione e ho eseguito di nuovo il test, ottenendo lo stesso risultato. Ecco i passaggi per riprodurre il problema:

  1. Accedi come utente TL0 o TL1
  2. Passa alla modalità sicura e disattiva tutto
  3. Seleziona una qualsiasi categoria
  4. Crea un nuovo argomento
  5. Seleziona il tag “In evidenza”, riservato allo staff
  6. Clicca su “Crea argomento”
  7. Il post viene creato e il tag “In evidenza” viene aggiunto

Ho appena visto qualcos’altro che potrebbe essere correlato: non riesco più ad accedere alle rotte tag.json, come questa:

Topics tagged featured

Aggiornamento: ops, niente, sembra che /tags/ sia stato rinominato in /tag/, il che ha rotto alcune delle nostre automazioni.

Purtroppo, sto ancora avendo difficoltà a creare un caso di test per questo problema. Ecco i passaggi che ho seguito:

  1. Ho creato un nuovo sito al commit: 6490fac881
  2. Ho creato l’utente amministratore: jamie.wilson
  3. Ho abilitato l’impostazione del sito: tagging enabled
  4. Ho creato i seguenti tag:
    360-renders
    add-ons
    advertisement
    conference
    contest
    meetup
    no-ads
    promotion-offered
    ba-tips
    cant-reproduce
    featured
  5. Ho creato i gruppi di tag, come mostrato negli screenshot forniti (con non più di 3 tag per gruppo ai fini del debug)
  6. Ho creato la categoria ‘Eventi’, impostando il valore ‘Eventi’ per ‘Restringe questi gruppi di tag a questa categoria’
  7. L’utente amministratore ha creato un argomento nella categoria ‘Feedback sul sito’ con il tag ‘ba-tips’ del gruppo staff.
  8. Ho disconnesso l’utente amministratore
  9. Ho creato un nuovo utente (attivato tramite link email): normal.user
  10. Come normal.user, ho creato un nuovo argomento in ‘Non categorizzato’ o ‘Feedback sul sito’. Tag disponibili: 360-renders, add-ons, advertisement

  1. Ho creato un nuovo argomento in ‘Eventi’. Tag disponibili: conference, contest, meetup

(non mostrato)

  1. L’utente amministratore può aggiungere tag limitati al post di normal.user:

  1. L’utente amministratore può vedere tutti e tre i tag:

  1. normal.user può vedere solo due tag:

DiscourseTagging.permitted_tag_names(Guardian.new(User.find_by_username('normal.user')))
["360-renders", "add-ons", "advertisement", "conference", "contest", "meetup"]
DiscourseTagging.hidden_tag_names(Guardian.new(User.find_by_username('normal.user')))
["no-ads", "promotion-offered"]

Forse qualcun altro riesce a riprodurre il problema? Al momento non ci riesco.

Credo di aver individuato il problema: #featured era presente sia nell’elenco riservato allo staff che nella nostra lista di ‘tag comuni’. Non sono sicuro di come sia finito lì, dovrò verificare le autorizzazioni dello staff per vedere se è stato creato in qualche modo. Scusa per il tempo perso, ma apprezzo moltissimo il tuo supporto! :pray:

Non è un problema! Sono contento che sia stata individuata la causa principale e che ora possiamo tutti sentirsi un po’ più sicuri che la nuova funzionalità funzioni come previsto.

Spero che ti sia utile per te e per il tuo sito ora che i problemi di configurazione sono stati risolti. Fammi sapere come va.