3.1.5.5.5.2 UserAllInformation
The server MUST set the fields of Buffer.All based on the access granted in UserHandle.GrantedAccess. The following table normatively specifies the value that the server MUST set in the Buffer.All.WhichFields field. If UserHandle.GrantedAccess does not have any of the Access Granted bits from this table, the server MUST return STATUS_ACCESS_DENIED.
Access granted
WhichFields
USER_READ_GENERAL
USER_ALL_USERNAME
USER_ALL_FULLNAME
USER_ALL_USERID
USER_ALL_PRIMARYGROUPID
USER_ALL_ADMINCOMMENT
USER_ALL_USERCOMMENT
USER_READ_LOGON
USER_ALL_HOMEDIRECTORY
USER_ALL_HOMEDIRECTORYDRIVE
USER_ALL_SCRIPTPATH
USER_ALL_PROFILEPATH
USER_ALL_WORKSTATIONS
USER_ALL_LASTLOGON
USER_ALL_LASTLOGOFF
USER_ALL_LOGONHOURS
USER_ALL_BADPASSWORDCOUNT
USER_ALL_LOGONCOUNT
USER_ALL_PASSWORDCANCHANGE
USER_ALL_PASSWORDMUSTCHANGE
USER_READ_ACCOUNT
USER_ALL_PASSWORDLASTSET
USER_ALL_ACCOUNTEXPIRES
USER_ALL_USERACCOUNTCONTROL
USER_ALL_PARAMETERS
USER_READ_PREFERENCES
USER_ALL_COUNTRYCODE
USER_ALL_CODEPAGE
Using the tables in sections 2.2.1.8 and 3.1.5.14.11, the server MUST set the appropriate fields in the Buffer parameter. The first table (section 2.2.1.8) lists the WhichFields-to-field-name mapping, and the second table (section 3.1.5.14.11) specifies the field-name-to-database-attribute mapping.