- Taylor Gibb
@taybgibb
- Updated October 28, 2019, 8:49am EDT
Heb je ooit geprobeerd om alle machtigingen in Windows te achterhalen? Er zijn share-permissies, NTFS-permissies, toegangscontrolelijsten en nog veel meer. Hier wordt uitgelegd hoe ze allemaal samenwerken.
De Security Identifier
De Windows besturingssystemen gebruiken SID’s om alle beveiligingsprincipes weer te geven. SID’s zijn gewoon variabele lengte reeksen van alfanumerieke tekens die machines, gebruikers en groepen vertegenwoordigen. SID’s worden toegevoegd aan ACL’s (Access Control Lists) elke keer dat je een gebruiker of groep toestemming geeft voor een bestand of map. Achter de schermen worden SID’s op dezelfde manier opgeslagen als alle andere data objecten, in binaire vorm. Wanneer je echter een SID in Windows ziet, wordt deze weergegeven in een meer leesbare syntax. Het komt niet vaak voor dat je een vorm van SID ziet in Windows, het meest voorkomende scenario is wanneer je iemand rechten geeft op een bron, waarna zijn gebruikersaccount wordt verwijderd, het zal dan verschijnen als een SID in de ACL. Laten we eens kijken naar het typische formaat waarin je SID’s ziet in Windows.
De notatie die je zult zien heeft een bepaalde syntax, hieronder staan de verschillende delen van een SID in deze notatie.
- Een ‘S’ prefix
- Structure revision number
- Een 48-bit identifier authority waarde
- Een variabel aantal 32-bit sub-authority of relative identifier (RID) waarden
Gebruik makend van mijn SID in de afbeelding hieronder zullen we de verschillende delen uitsplitsen om een beter begrip te krijgen.
De SID-structuur:
‘S’ – Het eerste bestanddeel van een SID is altijd een ‘S’. Deze wordt voorafgegaan door alle SID’s en is er om Windows te informeren dat wat volgt een SID is.
‘1’ – De tweede component van een SID is het revisienummer van de SID-specificatie, als de SID-specificatie zou worden gewijzigd, zou dit achterwaartse compatibiliteit bieden. Vanaf Windows 7 en Server 2008 R2 is de SID specificatie nog in de eerste revisie.
‘5’ – Het derde onderdeel van een SID wordt de Identifier Authority genoemd. Dit definieert in welk bereik de SID is gegenereerd. Mogelijke waarden voor deze sectie van de SID kunnen zijn:
- 0 – Null Authority
- 1 – World Authority
- 2 – Local Authority
- 3 – Creator Authority
- 4 – Non-unique Authority
- 5 – NT Authority
’21’ – Het vierde onderdeel is subauthority 1, de waarde ’21’ wordt in het vierde veld gebruikt om aan te geven dat de subauthorities die volgen de Local Machine of het Domain identificeren.
‘1206375286-251249764-2214032401’ – Deze worden respectievelijk subbevoegdheid 2,3 en 4 genoemd. In ons voorbeeld wordt dit gebruikt om de lokale machine te identificeren, maar het kan ook de identifier voor een Domein zijn.
‘1000’ – Sub-authoriteit 5 is de laatste component in onze SID en wordt de RID (Relatieve Identifier) genoemd, de RID is relatief voor elke security principal, let op dat alle door de gebruiker gedefinieerde objecten, degene die niet door Microsoft worden geleverd, een RID van 1000 of hoger zullen hebben.
Security Principals
Een security principal is alles waar een SID aan gekoppeld is, dit kunnen gebruikers, computers en zelfs groepen zijn. Security principals kunnen lokaal zijn of in de domein context. Je beheert lokale beveiligingsprincipes via de Lokale Gebruikers en Groepen snap-in, onder computerbeheer. Om daar te komen, klikt u met de rechtermuisknop op de snelkoppeling van de computer in het startmenu en kiest u beheren.
Om een nieuw beveiligingsprincipe voor een gebruiker toe te voegen, gaat u naar de map gebruikers en klikt u met de rechtermuisknop en kiest u nieuwe gebruiker.
Als u dubbelklikt op een gebruiker, kunt u deze toevoegen aan een beveiligingsgroep op het tabblad Lid van.
Om een nieuwe beveiligingsgroep te maken, navigeert u naar de map Groepen aan de rechterkant. Klik met de rechtermuisknop op de witte ruimte en selecteer nieuwe groep.
Deelmachtigingen en NTFS-machtigingen
In Windows zijn er twee soorten bestands- en mapmachtigingen, ten eerste zijn er de deelmachtigingen en ten tweede zijn er de NTFS-machtigingen die ook wel beveiligingsmachtigingen worden genoemd. Merk op dat wanneer je een map deelt, standaard de “Iedereen” groep de leesrechten krijgt. De beveiliging van mappen wordt meestal gedaan met een combinatie van de Share en NTFS Permissie. Als dit het geval is, is het essentieel om te onthouden dat de meest beperkende altijd geldt, bijvoorbeeld als de share permissie is ingesteld op Iedereen = Lezen (wat de standaard is), maar de NTFS Permissie laat gebruikers toe om een wijziging aan te brengen in het bestand, dan zal de Share Permissie de voorkeur krijgen en zullen de gebruikers niet toegestaan worden om wijzigingen aan te brengen. Wanneer je de permissies instelt, controleert de LSASS (Local Security Authority) de toegang tot de bron. Als je inlogt krijg je een toegangstoken met je SID erop, als je de bron wilt benaderen vergelijkt de LSASS de SID die je aan de ACL (Access Control List) hebt toegevoegd en als de SID op de ACL staat bepaalt hij of de toegang wordt toegestaan of geweigerd. Het maakt niet uit welke permissies je gebruikt, er zijn verschillen, dus laten we eens kijken om beter te begrijpen wanneer we wat moeten gebruiken.
Deel Permissies:
- Alleen van toepassing op gebruikers die de bron over het netwerk benaderen. Ze zijn niet van toepassing als u zich lokaal aanmeldt, bijvoorbeeld via terminal services.
- Het is van toepassing op alle bestanden en mappen in de gedeelde bron. Als u een meer granulair soort beperkingsschema wilt bieden, moet u NTFS Permission gebruiken naast gedeelde permissies
- Als u FAT- of FAT32-geformatteerde volumes hebt, is dit de enige beschikbare vorm van beperking voor u, aangezien NTFS Permissions niet beschikbaar zijn op die bestandssystemen.
NTFS-toestemmingen:
- De enige beperking op NTFS-toestemmingen is dat ze alleen kunnen worden ingesteld op een volume dat is geformatteerd volgens het NTFS-bestandssysteem
- Houd er rekening mee dat NTFS cumulatief is, wat betekent dat de effectieve toestemmingen van een gebruiker het resultaat zijn van een combinatie van de aan de gebruiker toegewezen toestemmingen en de toestemmingen van groepen waartoe de gebruiker behoort.
Windows 7 kwam met een nieuwe “gemakkelijke” share techniek. De opties veranderden van Lezen, Wijzigen en Volledige controle naar. Lezen en Lezen/Schrijven. Het idee was onderdeel van de hele Home groep mentaliteit en maakt het makkelijk om een map te delen voor niet computer geletterde mensen. Dit wordt gedaan via het context menu en deelt eenvoudig met je thuisgroep.
Als je wilt delen met iemand die niet in de thuisgroep zit, kun je altijd de “Specifieke mensen…” optie kiezen. Er wordt dan een uitgebreider dialoogvenster geopend. Waar u een specifieke gebruiker of groep kunt opgeven.
Er zijn slechts twee toestemmingen zoals eerder vermeld, samen bieden ze een alles of niets beschermingssysteem voor uw mappen en bestanden.
- Lees toestemming is de “kijken, niet aanraken” optie. Ontvangers kunnen een bestand wel openen, maar niet wijzigen of verwijderen.
- Lezen/Schrijven is de “alles doen”-optie. Ontvangers kunnen een bestand openen, wijzigen of verwijderen.
The Old School Way
Het oude dialoogvenster voor delen had meer opties en gaf ons de mogelijkheid om de map onder een andere alias te delen, het aantal gelijktijdige verbindingen te beperken en caching in te stellen. Niets van deze functionaliteit is verloren gegaan in Windows 7, maar is verborgen onder een optie genaamd “Geavanceerd delen”. Als u met de rechtermuisknop op een map klikt en naar de eigenschappen ervan gaat, vindt u deze instellingen voor “Geavanceerd delen” onder het tabblad delen.
Als u op de knop “Geavanceerd delen” klikt, waarvoor u lokale beheerdersreferenties nodig hebt, kunt u alle instellingen configureren waarmee u bekend was in eerdere versies van Windows.
Als u op de knop Machtigingen klikt, krijgt u de 3 instellingen te zien die we allemaal kennen.
- Met Leesrechten kunt u bestanden en submappen bekijken en openen, en toepassingen uitvoeren. Er kunnen echter geen wijzigingen worden aangebracht.
- Met de toestemming Wijzigen kan alles worden gedaan wat met de toestemming Lezen mogelijk is, maar er kunnen ook bestanden en submappen worden toegevoegd, submappen worden verwijderd en gegevens in bestanden worden gewijzigd.
- Volledige controle is de “alles doen”-toestemming van de klassieke toestemmingen, omdat hiermee alle voorgaande toestemmingen kunnen worden gebruikt. Bovendien krijgt u de geavanceerde mogelijkheid om NTFS-machtigingen te wijzigen. Deze machtigingen zijn alleen van toepassing op NTFS-mappen
NTFS-machtigingen
NTFS-machtigingen maken een zeer granulaire controle over uw bestanden en mappen mogelijk. De hoeveelheid granulariteit kan echter ontmoedigend zijn voor een nieuwkomer. Je kunt NTFS permissies zowel per bestand als per map instellen. Om NTFS-toestemmingen voor een bestand in te stellen, klikt u met de rechtermuisknop en gaat u naar de bestandseigenschappen waar u naar het tabblad beveiliging moet gaan.
Om de NTFS-toestemmingen voor een gebruiker of groep te bewerken, klikt u op de knop Bewerken.
Zoals u ziet, zijn er nogal wat NTFS-toestemmingen, dus laten we ze uitsplitsen. Eerst bekijken we de NTFS-machtigingen die u op een bestand kunt instellen.
- Volledige controle staat u toe om te lezen, schrijven, wijzigen, uitvoeren, attributen en machtigingen te wijzigen en eigenaar te worden van het bestand.
- Wijzigen staat u toe de attributen van het bestand te lezen, te schrijven, te wijzigen, uit te voeren en te wijzigen.
- Lezen & Uitvoeren staat u toe de gegevens, attributen, eigenaar en machtigingen van het bestand weer te geven en het bestand uit te voeren als het een programma is.
- Read stelt u in staat het bestand te openen, de attributen, de eigenaar en de permissies te bekijken.
- Write stelt u in staat gegevens naar het bestand te schrijven, het toe te voegen en de attributen te lezen of te wijzigen.
NTFS Machtigingen voor mappen hebben enigszins verschillende opties, dus laten we ze eens bekijken.
- Volledige controle staat u toe bestanden in de map te lezen, te schrijven, te wijzigen en uit te voeren, attributen en machtigingen te wijzigen en eigenaar te worden van de map of de bestanden in de map.
- Modify staat u toe bestanden in de map te lezen, schrijven, wijzigen en uit te voeren, en de attributen van de map of bestanden in de map te wijzigen.
- Read & Execute staat u toe de inhoud van de map weer te geven en de gegevens, attributen, eigenaar en permissies voor bestanden in de map weer te geven, en bestanden in de map uit te voeren.
- List Folder Contents staat u toe de inhoud van de map weer te geven en de gegevens, attributen, eigenaar en permissies voor bestanden in de map weer te geven.
- Lezen stelt u in staat om de gegevens, attributen, eigenaar en machtigingen van het bestand weer te geven.
- Schrijven stelt u in staat om gegevens naar het bestand te schrijven, toe te voegen aan het bestand en de attributen te lezen of te wijzigen.
Microsoft’s documentatie stelt ook dat “Lijst mapinhoud” u in staat stelt om bestanden in de map uit te voeren, maar u moet nog steeds “Lezen & Uitvoeren” aanzetten om dit te doen. Het is een erg verwarrend gedocumenteerde toestemming.
Samenvatting
In het kort, gebruikersnamen en groepen zijn representaties van een alfanumerieke string genaamd een SID (Security Identifier), Share en NTFS Permissies zijn gekoppeld aan deze SIDs. Share Permissies worden door LSSAS alleen gecontroleerd wanneer ze over het netwerk worden benaderd, terwijl NTFS Permissies alleen geldig zijn op de lokale machines. Ik hoop dat jullie allemaal goed begrijpen hoe de beveiliging van bestanden en mappen in Windows 7 is geïmplementeerd. Als u vragen hebt, kunt u die stellen in de commentaren.
Taylor Gibb is een professionele software-ontwikkelaar met bijna een decennium ervaring. Hij was twee jaar lang regionaal directeur van Microsoft in Zuid-Afrika en heeft meerdere Microsoft MVP (Most Valued Professional)-onderscheidingen ontvangen. Hij werkt momenteel in R&D bij Derivco International.Read Full Bio ”