Udostępnij przez


maska dostępu

Typ danych ACCESS_MASK to wartość DWORD , która definiuje prawa standardowe, specyficzne i ogólne. Te prawa są używane w wpisach kontroli dostępu (ACL) i są podstawowymi metodami określania żądanego lub przyznanego dostępu do obiektu.

typedef DWORD ACCESS_MASK;
typedef ACCESS_MASK* PACCESS_MASK;

Uwagi

Bity w tej wartości są przydzielane w następujący sposób:

Bity Meaning
0-15 Określone prawa. Zawiera maskę dostępu specyficzną dla typu obiektu skojarzonego z maską. Zobacz Object-Specific Prawa dostępu , aby uzyskać linki do praw dostępu dla różnych typów obiektów.
16-23 Prawa standardowe. Zawiera standardowe prawa dostępu obiektu.
24 Dostęp do zabezpieczeń systemu (ACCESS_SYSTEM_SECURITY). Służy do wskazywania dostępu do listy kontroli dostępu systemu (SACL). Ten typ dostępu wymaga, aby proces wywołujący miał uprawnienia SE_SECURITY_NAME (Zarządzanie inspekcją i dziennikiem zabezpieczeń). Jeśli ta flaga jest ustawiona w masce dostępu inspekcji ACE (pomyślny lub nieudany dostęp), dostęp SACL zostanie poddany inspekcji.
25 Maksymalna dozwolona (MAXIMUM_ALLOWED).
26-27 Zastrzeżony.
28 Wszystkie (GENERIC_ALL).
29 Wykonywanie ogólne (GENERIC_EXECUTE).
30 Zapis ogólny (GENERIC_WRITE).
31 Odczyt ogólny (GENERIC_READ).

Standardowe bity praw, od 16 do 23, zawierają standardowe prawa dostępu obiektu i mogą być kombinacją następujących wstępnie zdefiniowanych flag:

Bit Flag Meaning
16 USUNĄĆ Usuń dostęp.
17 READ_CONTROL Odczyt dostępu do właściciela, grupy i uznaniowej listy kontroli dostępu (DACL) deskryptora zabezpieczeń.
18 WRITE_DAC Dostęp do zapisu do listy DACL.
19 WRITE_OWNER Dostęp do zapisu do właściciela.
20 SYNCHRONIZOWAĆ Synchronizuj dostęp.

Następujące stałe zdefiniowane w pliku Winnt.h reprezentują określone i standardowe prawa dostępu.

#define DELETE                           (0x00010000L)
#define READ_CONTROL                     (0x00020000L)
#define WRITE_DAC                        (0x00040000L)
#define WRITE_OWNER                      (0x00080000L)
#define SYNCHRONIZE                      (0x00100000L)

#define STANDARD_RIGHTS_REQUIRED         (0x000F0000L)

#define STANDARD_RIGHTS_READ             (READ_CONTROL)
#define STANDARD_RIGHTS_WRITE            (READ_CONTROL)
#define STANDARD_RIGHTS_EXECUTE          (READ_CONTROL)

#define STANDARD_RIGHTS_ALL              (0x001F0000L)

#define SPECIFIC_RIGHTS_ALL              (0x0000FFFFL)

prawa dostępu Object-Specific

Małe 16 bitów (bity 0–15) ACCESS_MASK są używane do praw dostępu specyficznych dla obiektu. Znaczenie tych bitów zależy od typu obiektu, do których uzyskuje się dostęp. Aby uzyskać szczegółowe informacje na temat praw dostępu dla określonych typów obiektów, zobacz następujące tematy:

Typowe typy obiektów

  • Pliki i katalogi - Stałe praw dostępu do plików
    Definiuje określone prawa dostępu, takie jak FILE_READ_DATA, FILE_WRITE_DATA, FILE_APPEND_DATA, FILE_EXECUTE, FILE_DELETE_CHILD, FILE_READ_ATTRIBUTES i FILE_WRITE_ATTRIBUTES.
  • Klucze - rejestruZabezpieczenia klucza rejestru i prawa dostępu Definiuje określone prawa dostępu, takie jak KEY_QUERY_VALUE, KEY_SET_VALUE, KEY_CREATE_SUB_KEY, KEY_ENUMERATE_SUB_KEYS i KEY_NOTIFY.
  • Procesów - Zabezpieczenia procesów i prawa dostępu
    Definiuje określone prawa dostępu, takie jak PROCESS_TERMINATE, PROCESS_CREATE_THREAD, PROCESS_VM_OPERATION, PROCESS_VM_READ, PROCESS_VM_WRITE, PROCESS_QUERY_INFORMATION i PROCESS_SET_INFORMATION.
  • Wątków - Zabezpieczenia wątków i prawa dostępu
    Definiuje określone prawa dostępu, takie jak THREAD_TERMINATE, THREAD_SUSPEND_RESUME, THREAD_GET_CONTEXT, THREAD_SET_CONTEXT, THREAD_QUERY_INFORMATION i THREAD_SET_INFORMATION.

Dodatkowe typy obiektów

Aby uzyskać pełną listę zabezpieczanych obiektów i ich praw dostępu, zobacz Rights and Access Masks (Prawa dostępu i maski dostępu).

Requirements

Wymaganie Wartość
Minimalny obsługiwany klient Windows XP [tylko aplikacje klasyczne]
Minimalny obsługiwany serwer Windows Server 2003 [tylko aplikacje klasyczne]
Header Winnt.h (uwzględnij Windows.h)

Kontrola dostępu

Podstawowe struktury kontroli dostępu

Prawa dostępu i maski dostępu

GENERIC_MAPPING