API for user accounts, access checking, roles, and permissions.
Overview and terminology
Drupal's permission system is based on the concepts of accounts, roles, and permissions.
Users (site visitors) have accounts, which include a user name, an email address, a password (or some other means of authentication), and possibly other fields (if defined on the site). Anonymous users have an implicit account that does not have a real user name or any account information.
Each user account is assigned