Skip to main content

Enumeration & Lookup Values Reference

This section documents the possible values stored in coded columns used throughout the FSAA DC schema. These values appear in core data tables, and views decode them into human-readable labels.


TrusteeType

Referenced by SA_FSAA_Trustees.TrusteeType and SA_FSAA_LocalTrustees.TrusteeType.

ValueNameDescription
0UnknownType couldn't be determined
1SecurityPrincipalBuilt-in / well-known security principal (for example, Everyone)
2LocalUserLocal user account
3LocalGroupLocal group account
4GlobalUserDomain user account ("Domain User" in views)
5GlobalGroupDomain group account ("Domain Group" in views)
6SharepointUserSharePoint user
7SharepointGroupSharePoint group
8UnsupportedTrustee type not supported
9ServiceAccountService account
10ComputerComputer account
11GlobalTrusteeCross-domain trustee
20UnixUserPOSIX user
21UnixGroupPOSIX group
note

The descriptive labels emitted by views (SA_FSAA_PermissionsView.TrusteeTypeDescription, etc.) cover values 0, 1, 2, 3, 4, 5, 8, 9, and 10 only.


ResourceType

Referenced by SA_FSAA_Resources.ResourceType.

ValueNameView labelDescription
0ShareShareSMB / Windows share root
1NFSExportShareNFS export root
2NetAppVolumeFolderNetApp volume root
3WinDirFolderWindows directory
4WinFileFileWindows file
5UnixDirFolderUnix directory
6UnixFileFileUnix file

Views map these to three labels using CASE WHEN r.ResourceType IN (0,1) THEN 'Share' WHEN r.ResourceType IN (2,3,5) THEN 'Folder' WHEN r.ResourceType IN (4,6) THEN 'File' END.


GateType

Referenced by SA_FSAA_Gates.GateType.

ValueDescription
0SMB share gate
1Policy gate (LSA logon-right pseudo-trustee container — INTERACTIVE, BATCH, SERVICE, TERMINAL SERVER USER, etc.)
2NFS export gate

Share gates (0/2) carry NTFS / share permissions and are reachable via SA_FSAA_GatesProxy. Policy gates (1) are produced by the local-policy enumerator: they have no ShareID or FolderID, and their members are stored in SA_FSAA_Policies and resolved at query time by SA_FSAA_GetPolicyMembership. Views that surface share traversal label any non-zero GateType as 'NFS' for legacy compatibility (CASE WHEN g.GateType = 0 THEN 'SMB' ELSE 'NFS' END); policy gates are normally filtered out by the r.GatesProxyID IS NOT NULL predicate before reaching that CASE.


Rights Bitmask

The simplified six-bit FSAA rights model. Used in SA_FSAA_Rights.AllowRights, DenyRights, DirectAllowRights, InheritedAllowRights, DirectDenyRights, InheritedDenyRights and surfaced in views as the AllowRightsDescription / DenyRightsDescription text columns (for example, LRWDMA).

BitHex / DecimalLetterName
00x01 (1)RRead
10x02 (2)WWrite
20x04 (4)DDelete
30x08 (8)MManage
40x10 (16)AAdmin
50x20 (32)LList

The corresponding Windows mask values are stored separately in the *Mask columns. Common mappings used by SA_FSAA_PermissionsView.AllowMaskDescription:

Mask (decimal)Description
0None
2032127Full Control (allow)
1245631Modify
1179817Read & Execute (or "List folder contents" when AllowRights = 32)
1179785Read
1179926Write
983551Full Control (deny)
197055Modify (deny)
1310720Change Permissions
1572864Take Ownership
1114112Delete
1179648Read Permissions
note

The CASE expression in SA_FSAA_PermissionsView / SA_FSAA_DirectPermissionsView / SA_FSAA_InheritedPermissionsView decodes many additional special-permission decimal values.