Overview
Principals are the entities that represent individuals, groups, resources, or other organizational elements within Stalwart. They play a key role in managing access, permissions, and interactions with the mail system. Principals in Stalwart follow the JMAP Sharing specification (as outlined in the RFC), which provides a standardized way to define and share resources among users. Each principal type represents a different category of entity and serves a distinct function within the system.
Individual
The Individual principal type in Stalwart represents a single person or user account. It is the fundamental unit for user management, as each email user within the system is stored as an individual principal. Individual principals contain all the information necessary to manage and authenticate a user's account, such as login credentials, email addresses, group memberships, and permissions.
Group
The Group principal type in Stalwart represents a collection of individual users and potentially other groups. Groups function similarly to regular accounts in that they can receive emails, but they differ in a few important ways: group accounts cannot log in to the mail server using IMAP, POP3, or JMAP. Instead, groups are designed to organize users and share resources. When an individual is added as a member of a group, they gain access to the group’s inbox, which appears as a shared folder in their email client when using IMAP or JMAP.