Salve ragazzi buongiorno.

Ho un'applicazione dove gli utenti che si registrano possono avere la possibilità di visualizzare tre livelli di news:
Socio fondatore
Socio
Iscritto

Devo dare la possobilità di scelte multiple, per esempio un'utente può visualizzare le sole news degli iscritti e un'altro quelle del socio fondatore e degli iscritti.

Io ho imòostato il db in questo modo:

ho una tabella iscritti dove oltre i campi dei dati personali ho anche tre campi check (si/no):
socioFondatore
socio
iscritto.

Stessa cosa per le news
Ho una teballa dove oltre a titolo, data e messaggio ho tre campi check (si/no)
socioFondatore
socio
iscritto.

Io vorrei fare questo:
Utente 1 vede le news del socio fondatore e dgli iscritti

Utente 2 vede solo le news degli iscritti

Utente 3 vede le news del socio e degli iscritti

Utente 4 vede tutte le categorie di news.

E così via

Il mio ragionamento è stato questo.
Assegno i livelli di visibiltà news all'utente e poi estraggo i record dalle news che corrispondono ai livelli dell'utente appena filtrato.
All'atto pratico giustamente però si verifica questo:

Utente 1 ha i permessi di visualizzazione su socio fondatore e iscritti

Utente 2 ha i permessi iscritti

Inserisco una news con i permessi di visualizazione solo su iscritti.

Se si logga l'utente 2 la news la vedrà perchè i permessi tra di loro corrispondono.

Se si logga l'utente 1 non la vedrà perchè quest'ultimo ha anche il permesso di visualizzazione delle news dei soci.

Come posso fare in modo che anche l'utente 1 visualizzi la news?

Grazie a tutti in anticipo