Introduction to the Drupal access system
If you’ve been doing some site building in Drupal or have experience with previous versions of Drupal, you may already know a thing or two about roles and permissions. If not, no need to worry, as we will talk a bit about how these work.
Essentially, one of the things that makes Drupal special is the flexible access system it has out of the box, based on user roles and permissions. Roles are attributes that can be given to a user. The latter can have multiple roles assigned but always has at least the default Authenticated User role. Permissions are the individual access indicators that can be assigned to roles. By the transitive property, users have all the permissions assigned to the roles they have been assigned. So, the result is a matrix of permissions by role, and that’s actually how it is visualized in the UI at admin/people/permissions
:
Figure 10.1: Configuring user permissions
Drupal core...