Har du någonsin försökt räkna ut alla behörigheter i Windows? Det finns delningsbehörigheter, NTFS-behörigheter, åtkomstkontrollistor och mer. Så här fungerar de alla tillsammans.
Säkerhetsidentifieraren
Windows operativsystem använder SID för att representera alla säkerhetsprinciper. SID är bara strängar med variabel längd med alfanumeriska tecken som representerar maskiner, användare och grupper. SIDs läggs till i ACL (Access Control Lists) varje gång du ger en användare eller grupp behörighet till en fil eller mapp. Bakom scenen lagras SID: er på samma sätt som alla andra dataobjekt är binära. Men när du ser ett SID i Windows kommer det att visas med en mer läsbar syntax. Det är inte ofta du ser någon form av SID i Windows, det vanligaste scenariot är när du ger någon behörighet till en resurs, då raderas deras användarkonto, det kommer då att visas som ett SID i ACL. Så låt oss ta en titt på det typiska formatet där du kommer att se SID: er i Windows.
Notationen som du ser tar en viss syntax, nedan är de olika delarna av ett SID i denna notation.
- Ett ”S” -prefix
- Strukturrevisionsnummer
- Ett 48-bitars identifieringsbehörighetsvärde
- Ett variabelt antal 32-bitars under-myndighets- eller relatividentifieringsvärden (RID)
Med hjälp av min SID i bilden nedan kommer vi att dela upp de olika avsnitten för att få en bättre förståelse.
SID-strukturen:
'S' - Den första komponenten i ett SID är alltid ett ”S”. Detta är prefix till alla SID: er och finns för att informera Windows om att det som följer är ett SID.
‘1’ - Den andra komponenten i ett SID är revisionsnumret för SID-specifikationen. Om SID-specifikationen skulle ändras skulle den ge bakåtkompatibilitet. Från och med Windows 7 och Server 2008 R2 är SID-specifikationen fortfarande i den första versionen.
‘5’ - Den tredje delen av ett SID kallas Identifier Authority. Detta definierar i vilket omfattning SID genererades. Möjliga värden för dessa avsnitt av SID kan vara:
- 0 - Null Authority
- 1 - Världsmyndigheten
- 2 - Lokala myndigheter
- 3 - Skaparmyndighet
- 4 - Icke-unik myndighet
- 5 - NT myndighet
’21’ - Den fjärde komponenten är undermyndighet 1, värdet '21' används i det fjärde fältet för att specificera att de undermyndigheter som följer identifierar den lokala maskinen eller domänen.
‘1206375286-251249764-2214032401’ - Dessa kallas undermyndighet 2,3 respektive 4. I vårt exempel används detta för att identifiera den lokala maskinen, men kan också vara identifieraren för en domän.
‘1000’ - Undermyndighet 5 är den sista komponenten i vårt SID och kallas RID (Relative Identifier), RID är relativt varje säkerhetsprincip. Observera att alla användardefinierade objekt, de som inte levereras av Microsoft kommer att ha en RID på 1000 eller högre.
Säkerhetsansvariga
En säkerhetsprincip är allt som har ett SID kopplat, det kan vara användare, datorer och till och med grupper. Säkerhetsprinciper kan vara lokala eller befinna sig i domänkontext. Du hanterar lokala säkerhetsprinciper via snapin-modulen Lokala användare och grupper under datorhantering. För att komma dit högerklickar du på datorns genväg i startmenyn och väljer hantera.
För att lägga till en ny användarsäkerhetsprincip kan du gå till användarmappen och högerklicka och välja ny användare.
Om du dubbelklickar på en användare kan du lägga till dem i en säkerhetsgrupp på fliken Medlem av.
För att skapa en ny säkerhetsgrupp, navigerar du till mappen Grupper till höger. Högerklicka på det vita utrymmet och välj ny grupp.
Dela behörigheter och NTFS tillstånd
I Windows finns det två typer av fil- och mappbehörigheter, för det första finns det delningsbehörigheter och för det andra finns det NTFS-behörigheter som också kallas säkerhetsbehörigheter. Observera att när du delar en mapp som standard får gruppen "Alla" läsbehörighet. Säkerhet i mappar görs vanligtvis med en kombination av Dela och NTFS-tillstånd om så är fallet är det viktigt att komma ihåg att det mest begränsande alltid gäller, till exempel om delningsbehörigheten är inställd på Alla = Läs (vilket är standard), men NTFS-tillstånd tillåter användare att göra en ändring av filen, delningstillstånd kommer att ha företräde och användare får inte göra ändringar. När du ställer in behörigheterna kontrollerar LSASS (Local Security Authority) åtkomst till resursen. När du loggar in får du en åtkomsttoken med din SID på den, när du går för att komma åt resursen jämför LSASS den SID som du lade till i ACL (Access Control List) och om SID är på ACL bestämmer den om tillåta eller neka åtkomst. Oavsett vilka behörigheter du använder finns det skillnader så kan vi ta en titt för att få en bättre förståelse för när vi ska använda vad.
Dela behörigheter:
- Gäller endast användare som har åtkomst till resursen via nätverket. De gäller inte om du loggar in lokalt, till exempel via terminaltjänster.
- Det gäller alla filer och mappar i den delade resursen. Om du vill tillhandahålla en mer detaljerad typ av begränsningsschema bör du använda NTFS Permission utöver delade behörigheter
- Om du har några FAT- eller FAT32-formaterade volymer är detta den enda formen av begränsning som är tillgänglig för dig, eftersom NTFS-behörigheter inte är tillgängliga på dessa filsystem.
NTFS-tillstånd:
- Den enda begränsningen för NTFS-behörigheter är att de bara kan ställas in på en volym som är formaterad till NTFS-filsystemet
- Kom ihåg att NTFS är kumulativa vilket innebär att en användares effektiva behörigheter är resultatet av att man kombinerar användarens tilldelade behörigheter och behörigheterna för alla grupper som användaren tillhör.
De nya aktierättigheterna
Windows 7 köpte med sig en ny "enkel" delteknik. Alternativen ändrades från Läs, Ändra och Full kontroll till. Läs och läs / skriv. Idén var en del av hela hemmagruppens mentalitet och gör det enkelt att dela en mapp för personer som inte är datakunniga. Detta görs via snabbmenyn och delar enkelt med din hemgrupp.
Om du vill dela med någon som inte är i hemgruppen kan du alltid välja alternativet "Specifika personer ...". Vilket skulle ge en mer "detaljerad" dialog. Där du kan ange en specifik användare eller grupp.
Det finns bara två tillstånd som tidigare nämnts, tillsammans erbjuder de ett allt eller inget skyddssystem för dina mappar och filer.
- Läsa tillstånd är alternativet "titta, rör inte". Mottagarna kan öppna, men inte ändra eller ta bort en fil.
- Läsa skriva är alternativet "gör vad som helst". Mottagare kan öppna, ändra eller ta bort en fil.
Old School Way
Den gamla delningsdialogen hade fler alternativ och gav oss möjlighet att dela mappen under ett annat alias, det tillät oss att begränsa antalet samtidiga anslutningar samt konfigurera cachning. Ingen av dessa funktioner går förlorade i Windows 7 utan döljs snarare under ett alternativ som heter "Advanced Sharing". Om du högerklickar på en mapp och går till dess egenskaper kan du hitta dessa inställningar för "Advanced Sharing" under delningsfliken.
Om du klickar på knappen "Avancerad delning", som kräver lokala administratörsuppgifter, kan du konfigurera alla inställningar som du kände till i tidigare versioner av Windows.
Om du klickar på behörighetsknappen visas de tre inställningarna som vi alla känner till.
- Läsa med tillstånd kan du visa och öppna filer och underkataloger samt köra applikationer. Det tillåter dock inga ändringar.
- Ändra tillåtelse gör att du kan göra allt som Läsa tillstånd tillåter det också att lägga till möjligheten att lägga till filer och underkataloger, ta bort undermappar och ändra data i filerna.
- Full kontroll är "gör vad som helst" med de klassiska behörigheterna, eftersom det gör att du kan göra alla tidigare behörigheter. Dessutom ger det dig avancerad ändring av NTFS-tillstånd, detta gäller endast i NTFS-mappar
NTFS-tillstånd
NTFS-tillstånd tillåter mycket detaljerad kontroll över dina filer och mappar. Med detta sagt kan mängden granularitet vara skrämmande för en nykomling. Du kan också ställa in NTFS-behörighet både per fil och per mapp. För att ställa in NTFS-behörighet för en fil ska du högerklicka och gå till filegenskaperna där du måste gå till säkerhetsfliken.
Klicka på redigeringsknappen för att redigera NTFS-behörigheter för en användare eller grupp.
Som du kanske ser finns det ganska många NTFS-behörigheter så kan vi bryta ner dem. Först tittar vi på NTFS-behörigheter som du kan ställa in i en fil.
- Full kontroll låter dig läsa, skriva, modifiera, köra, ändra attribut, behörigheter och ta äganderätten till filen.
- Ändra låter dig läsa, skriva, modifiera, köra och ändra filens attribut.
- Läs & kör låter dig visa filens data, attribut, ägare och behörigheter och köra filen om det är ett program.
- Läsa låter dig öppna filen, visa dess attribut, ägare och behörigheter.
- Skriva låter dig skriva data till filen, lägga till filen och läsa eller ändra dess attribut.
NTFS-behörigheter för mappar har lite olika alternativ så kan vi ta en titt på dem.
- Full kontroll låter dig läsa, skriva, ändra och exekvera filer i mappen, ändra attribut, behörigheter och ta äganderätt till mappen eller filerna i.
- Ändra låter dig läsa, skriva, modifiera och köra filer i mappen och ändra attribut för mappen eller filerna i.
- Läs & kör låter dig visa mappens innehåll och visa data, attribut, ägare och behörigheter för filer i mappen och köra filer i mappen.
- Lista mappinnehåll låter dig visa mappens innehåll och visa data, attribut, ägare och behörigheter för filer i mappen.
- Läsa låter dig visa filens data, attribut, ägare och behörigheter.
- Skriva låter dig skriva data till filen, lägga till filen och läsa eller ändra dess attribut.
Microsofts dokumentation säger också att "Listmappinnehåll" låter dig köra filer i mappen, men det måste du fortfarande aktivera "Läs & kör" för att göra det. Det är ett mycket förvirrande dokumenterat tillstånd.
Sammanfattning
Sammanfattningsvis är användarnamn och grupper representationer av en alfanumerisk sträng som kallas SID (Security Identifier), Dela och NTFS Behörigheter är knutna till dessa SID. Delbehörigheter kontrolleras endast av LSSAS när de nås via nätverket, medan NTFS-behörigheter endast är giltiga på de lokala maskinerna. Jag hoppas att ni alla har en god förståelse för hur fil- och mappsäkerhet i Windows 7 implementeras. Om du har några frågor är du välkommen att låta av i kommentarerna.