The Authority types include:
Admin
User
Group
Owner
Everyone
Guest
Role
When you obtain these types of authority through authorityservice,
Admin, everyone, and guest return a fixed value.
It corresponds to the role_administrator, group_everyone, and guest defined in permissionservice respectively. Here, we directly show that the value is not a constant declaration.
The user is the person returned through the personservice. Associate the node and properties tables to find the person according to the username attribute conditions in properties.
This is the implementation of alfresco. In fact, you can use QNAME as person, and avoid table Association. The implementation of alfresco ignores nodes where the person does not have the username attribute.
The owner returns an empty set.
Group and role obtain the default authoritycontainer (node 5), traverse all the sub-nodes, and obtain the role and group by determining the type.
Through the above analysis, we can see that alfresco has different storage methods and locations for different types of data.