3.1.5.5.5.2 UserAllInformation

  1. 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

  2. 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.