Säkerhets- och åtkomsträttigheter för registernycklar
Med Windows-säkerhetsmodellen kan du styra åtkomsten till registernycklar. Mer information om säkerhet finns i Access-Control Model.
Du kan ange en säkerhetsbeskrivning för en registernyckel när du anropar funktionen RegCreateKeyEx eller RegSetKeySecurity. Om du anger NULL-hämtar nyckeln en standardsäkerhetsbeskrivning. ACL:erna i en standardsäkerhetsbeskrivning för en nyckel ärvs från dess direkta överordnade nyckel.
Om du vill hämta säkerhetsbeskrivningen för en registernyckel anropar du funktionen RegGetKeySecurity, GetNamedSecurityInfoeller Funktionen GetSecurityInfo.
De giltiga åtkomsträttigheterna för registernycklar är DELETE, READ_CONTROL, WRITE_DAC och WRITE_OWNER standardåtkomsträttigheter. Registernycklar stöder inte standardåtkomstbehörigheten SYNKRONISERA.
I följande tabell visas de specifika åtkomsträttigheterna för registernyckelobjekt.
Värde | Betydelse |
---|---|
KEY_ALL_ACCESS (0xF003F) |
Kombinerar åtkomsträttigheterna STANDARD_RIGHTS_REQUIRED, KEY_QUERY_VALUE, KEY_SET_VALUE, KEY_CREATE_SUB_KEY, KEY_ENUMERATE_SUB_KEYS, KEY_NOTIFY och KEY_CREATE_LINK. |
KEY_CREATE_LINK (0x0020) |
Reserverad för systemanvändning. |
KEY_CREATE_SUB_KEY (0x0004) |
Krävs för att skapa en undernyckel för en registernyckel. |
KEY_ENUMERATE_SUB_KEYS (0x0008) |
Krävs för att räkna upp undernycklarna för en registernyckel. |
KEY_EXECUTE (0x20019) |
Motsvarar KEY_READ. |
KEY_NOTIFY (0x0010) |
Krävs för att begära ändringsmeddelanden för en registernyckel eller för undernycklar till en registernyckel. |
KEY_QUERY_VALUE (0x0001) |
Krävs för att köra frågor mot värdena för en registernyckel. |
KEY_READ (0x20019) |
Kombinerar värdena STANDARD_RIGHTS_READ, KEY_QUERY_VALUE, KEY_ENUMERATE_SUB_KEYS och KEY_NOTIFY. |
KEY_SET_VALUE (0x0002) |
Krävs för att skapa, ta bort eller ange ett registervärde. |
KEY_WOW64_32KEY (0x0200) |
Anger att ett program i 64-bitars Windows ska fungera i 32-bitars registervyn. Den här flaggan ignoreras av 32-bitars Windows. Mer information finns i Åtkomst till en alternativ registervy. Den här flaggan måste kombineras med operatorn OR med de andra flaggorna i den här tabellen som antingen frågar efter eller får åtkomst till registervärden. Windows 2000: Den här flaggan stöds inte. |
KEY_WOW64_64KEY (0x0100) |
Anger att ett program i 64-bitars Windows ska fungera i 64-bitars registervyn. Den här flaggan ignoreras av 32-bitars Windows. Mer information finns i Åtkomst till en alternativ registervy. Den här flaggan måste kombineras med operatorn OR med de andra flaggorna i den här tabellen som antingen frågar efter eller får åtkomst till registervärden. Windows 2000: Den här flaggan stöds inte. |
KEY_WRITE (0x20006) |
Kombinerar åtkomsträttigheterna STANDARD_RIGHTS_WRITE, KEY_SET_VALUE och KEY_CREATE_SUB_KEY. |
När du anropar funktionen RegOpenKeyEx kontrollerar systemet de begärda åtkomsträttigheterna mot nyckelns säkerhetsbeskrivning. Om användaren inte har rätt åtkomst till registernyckeln misslyckas den öppna åtgärden. Om en administratör behöver åtkomst till nyckeln är lösningen att aktivera SE_TAKE_OWNERSHIP_NAME behörighet och öppna registernyckeln med WRITE_OWNER åtkomst. Mer information finns i Aktivera och inaktivera privilegier.
Du kan begära ACCESS_SYSTEM_SECURITY åtkomst till en registernyckel om du vill läsa eller skriva nyckelns lista över systemåtkomstkontroll (SACL). Mer information finns i Access-Control listor (ACL: er) och SACL-åtkomsträtt.
Om du vill visa de aktuella åtkomsträttigheterna för en nyckel, inklusive de fördefinierade nycklarna, använder du Registereditorn (Regedt32.exe). När du har navigerat till önskad nyckel går du till menyn Redigera och väljer Behörigheter.