Prevent anonymous users from accessing "node/" node/%nid and taxonomy/term/%tid So far, I have been reading some similar questions but I haven't found an elegant and simple way of doing this (if there is any). As I say in the question title, I don't want anonymous users to access the complete list of nodes (in node/) nor a particular node (under node/%nid), nor even a particular taxonomy term. :)

My approach to this is as follows. As far as I know, I can override the default node/%nid system page using a variant in Drupal panels. I actually did this and, if the user is not logged in, when he/she tries to access the node/%nid he/she will see a log in box. For the list of nodes, I removed from the front page all of the nodes and none is shown. I would expect to do with taxonomy/term/%tid the same as I did with node/%nid but, for a strange reason, Drupal panels is not able to create the variant (not sure if it is a bug).

Anyway, I would like to know if you have a more elegant or simpler approach to this (no matter if using panels or not). 

Thanks in advance for your help!
Have you tried in the template.php? what if you do something like:

function yourtheme_preprocess_page(&amp;$variables, $hook){
   if(!$user-&gt;uid){
      if((arg(0) == 'node') || (arg(0) == 'taxonomy')){
         //redirect to login
      }
   }
}