Security Access Rights


Access Masks

An access mask is a 32 bit value with the bits as shown in the following table.

Bits 31-28 Bits 27-25 Bit 24 Bits 23-16 Bits 15-0
Generic rights Reserved Bits System access Standard rights Specific rights

struct access_type
{
 enum
 {
  _delete          = 0x00010000,
  read             = 0x00020000,
  write            = 0x00040000,
  owner_write      = 0x00080000,
  synchronize      = 0x00100000,

  standard_required = 0x000f0000,
  standard_read     = read,
  standard_write    = read,
  standard_execute  = read,
  all_standard      = 0x001f0000,

 
  system_security   = 0x01000000,
  maximum_allowed   = 0x02000000,

  generic_read      = 0x80000000,
  generic_write     = 0x40000000,
  generic_execute   = 0x20000000,
  all_generic       = 0x10000000
 };
};