Identity and Access Management (IAM) is a core component of AWS, enabling security by granting authenticated entities granular permissions to AWS services and resources. One of the ways IAM achieves this is through the concept of “principals”, which are entities that can make requests to AWS services. A principal can be an IAM user, an AWS service, or even an anonymous internet user.

Source