The node_access Table

I'm starting to gather knowledge on how the ACL Drupal module works.

On a fresh install, the node_access table contains one entry:

nid gid realm grant_view grant_update grant_delete
0 0 all 1 0 0

This entry grants view access to all nodes. When you install an access module, this entry is replaced by module-specific node access entries.

Access Denied to Anonymous Users

When you subsequently remove the access module, your node_access table is typically left with entries like

nid gid realm grant_view grant_update grant_delete
123 0 all 1 0 0
124 0 all 1 0 0
125 0 all 1 0 0

(one entry for each of your nodes). These entries grant View access to all of your existing nodes, but any subsequently created nodes won't be visible when you create a new node, because they don't get that entry.

To fix this problem, click on [Rebuild permissions] on admin/content/node-settings; this will put back the default record shown above.

P.S. Here's a character-only template for cut&paste:

+-----+-----+---------------+------------+--------------+--------------+
| nid | gid | realm         | grant_view | grant_update | grant_delete |
+-----+-----+---------------+------------+--------------+--------------+
|   0 |   0 | all           |          1 |            0 |            0 |
+-----+-----+---------------+------------+--------------+--------------+