Come posso consentire la visualizzazione solo di nodi specifici in base ai ruoli utente?
Fondamentalmente, non voglio consentire agli utenti di accedere a nodi con un ruolo specifico.
Come posso consentire la visualizzazione solo di nodi specifici in base ai ruoli utente?
Fondamentalmente, non voglio consentire agli utenti di accedere a nodi con un ruolo specifico.
Risposte:
Hai provato il modulo di accesso al contenuto
Questo modulo consente di gestire le autorizzazioni per i tipi di contenuto per ruolo e autore. Ti consente di specificare la visualizzazione personalizzata, modificare ed eliminare le autorizzazioni per ciascun tipo di contenuto. Facoltativamente, è possibile abilitare le impostazioni di accesso al contenuto, in modo da poter personalizzare l'accesso per ciascun nodo del contenuto.
Quello di cui stai parlando è il controllo dell'accesso al nodo Drupal, che è un argomento enorme.
Il supporto integrato del core per il controllo dell'accesso ai nodi è piuttosto approssimativo e per controllare l'accesso per visualizzare un nodo per ruolo, è necessario utilizzare una sorta di modulo di controllo dell'accesso ai nodi.
C'è una pagina su Drupal.org che elenca tutti i moduli di accesso ai nodi , con una recensione di ciascuna capsula. Ti suggerisco di dare un'occhiata a quella pagina per vedere se riesci a trovare un modulo adatto per controllare l'accesso in base ai ruoli.
Quando si lavora con il controllo degli accessi, aiuta a capire come funzionano effettivamente i moduli di controllo degli accessi Drupal, ecco una breve descrizione:
Gli utenti autorizzati ad amministrare i nodi non sono mai limitati dal controllo dell'accesso ai nodi. Gli utenti che non dispongono dell'autorizzazione per visualizzare il contenuto pubblicato non possono mai ottenere l'accesso da un modulo di accesso al nodo. Solo gli utenti che hanno "accesso ai contenuti" e non "amministrano i nodi" sono idonei per il selvaggio mondo del controllo del modulo di accesso ai nodi.
Il controllo di accesso ai nodi in Drupal è un additivo di regola . Ciò significa che qualsiasi modulo che esegue il controllo degli accessi in conformità con la "filosofia Drupal" dovrebbe solo consentire l'accesso, non negarlo. Un amministratore che desidera ottimizzare l'accesso a un nodo deve prima assicurarsi che nessuno abbia accesso, quindi aggiungere le autorizzazioni di accesso a chiunque abbia accesso.
Ciò significa che può essere piuttosto complicato limitare l' accesso alle persone con un modulo come Accesso ai contenuti , poiché è necessario iniziare negando l' accesso a tutti e quindi aggiungerlo nuovamente a quei nodi che non si desidera limitare. Tuttavia, penso che sia l'opzione migliore se hai davvero bisogno di farlo nodo per nodo. La sua risoluzione principale sono i tipi di contenuto, ma ti consente di sovrascriverlo per singoli nodi.
Sfortunatamente, non sarai in grado di usare Nega accesso poiché funziona solo su tipi di contenuto, senza sovrascrivere i singoli nodi.
NB: L'uso di più di un modulo di accesso al nodo non è raccomandato.
Si noti che se è possibile modificare i requisiti in modo da poter utilizzare il tipo di contenuto come unità di base per il controllo dell'accesso al nodo, Negare l'accesso sarebbe l'ideale. Ad esempio, se hai un ruolo di "studente" e vuoi negare l'accesso ai nodi con le risposte, puoi creare un tipo di contenuto "Risposta" (che può essere solo un clone dell '"Articolo" predefinito) e Negare l'accesso provvedere a proteggere tutti i nodi del tipo "Risposta" dall'essere visti dal ruolo "studente".