Een aangepast umask instellen in macOS

Aan elk bestand of elke map op een Mac zijn bevoegdheden gekoppeld. Wanneer u een nieuw bestand of nieuwe map aanmaakt, bepaalt het umask de instellingen voor bevoegdheden.

Over bevoegdheden en umasks

Deze instructies zijn bedoeld voor gebruikers bij grote ondernemingen. Ga voorzichtig te werk wanneer u bevoegdheden en umasks van bestanden wijzigt. Als deze onjuist worden ingesteld, kunt u de beveiliging verlagen van bestanden, mappen of programma's op de Mac. Het kan er ook toe leiden dat sommige apps niet werken.

Bevoegdheden

Alle bestanden, mappen en programma's die u opslaat op een Mac-opstartschijf of een aangesloten volume hebben instellingen voor bevoegdheden. De bevoegdheden bepalen welke gebruikersaccounts lees- of schrijfrechten hebben voor een bestand, map of app, of deze mogen uitvoeren. De bevoegdheden omvatten POSIX-bevoegdheden en toegangscontrolelijsten (ACL's). 

U kunt de POSIX-bevoegdheden van een gebruiker meer of minder beperken door de waarde van het umask aan te passen.

Umasks

De POSIX-bevoegdheden voor een bestand kunnen worden weergegeven door een getal van drie cijfers. U ziet de bevoegdheden mogelijk op deze manier weergegeven wanneer u ze in Terminal bekijkt. De waarde van elk cijfer ligt tussen nul en zeven. Wanneer u een bestand aanmaakt, wordt de umask-waarde afgetrokken van de standaardwaarde (doorgaans 666 voor bestanden en 777 voor mappen) om de bevoegdheden voor het nieuwe bestand of de nieuwe map te bepalen.

Een standaard-umask van 022 stelt bijvoorbeeld bevoegdheden in van 644 voor nieuwe bestanden en 755 voor nieuwe mappen. Met deze bevoegdheden kunnen groepen en andere gebruikers de bestanden lezen en mappen openen, maar alleen de eigenaar kan wijzigingen aanbrengen. 

Zorg dat u begrijpt wat umasks zijn voordat u verdergaat. Als u een umask niet correct instelt, verliest u mogelijk onbedoeld toegang tot bepaalde bestanden en verleent u toegang aan gebruikers waar dat niet de bedoeling was. Raadpleeg het gedeelte MODES in de chmod(1)-handleiding voor meer informatie.

U kunt het umask instellen op een aantal verschillende locaties. Afhankelijk van de locatie worden verschillende apps erdoor beïnvloed.

Umask voor gebruikersprogramma's in macOS High Sierra, macOS Sierra, OS X El Capitan en OS X Yosemite

In OS X Yosemite 10.10.3 en hoger kunt u dit commando in Terminal gebruiken terwijl u als beheerder bent ingelogd:

sudo launchctl config user umask nnn

Vervang nnn door de gewenste umask-waarde, zoals 027 of 002. Na het uitvoeren van dit commando, moet u de Mac mogelijk opnieuw opstarten.

Met dit commando wordt het umask van de gebruiker ingesteld voor alle programma's die deze opent, zoals de Finder, Teksteditor of Final Cut Pro. Hiermee wordt ook het umask ingesteld voor programma's die de gebruiker start via de commandoregel. Met dit commando worden eveneens de bevoegdheden van nieuwe bestanden geregeld die met deze programma's worden aangemaakt.

Als u het bericht 'Configuratie schrijven lukt niet: Bestand of directory bestaat niet' ziet, controleert u of de map /private/var/db/com.apple.xpc.launchd/config aanwezig is. Als de map ontbreekt, kunt u deze aanmaken met het volgende commando:

sudo mkdir -m 755 /private/var/db/com.apple.xpc.launchd/config

Nadat u de map hebt aangemaakt, voert u het commando sudo launchctl config user umask nnn nogmaals uit. Voer het commando man launchctl uit voor meer informatie over het instellen van het umask in OS X Yosemite.

Umask voor systeemprocessen in OS X Yosemite

In OS X Yosemite 10.10.3 en hoger kunt u dit commando in Terminal gebruiken terwijl u als beheerder bent ingelogd:

sudo launchctl config system umask nnn

Vervang nnn door de gewenste umask-waarde, zoals 027 of 002. Na het uitvoeren van dit commando, moet u de Mac mogelijk opnieuw opstarten.

Met dit commando wordt het umask van de gebruiker ingesteld voor alle daemons die deze uitvoert in de systeemcontext. Het wordt sterk afgeraden om deze waarde wijzigen omdat de bevoegdheden kunnen worden gewijzigd voor bestanden die door de systeemsoftware worden gebruikt. Als de bevoegdheden te beperkt zijn, werkt afhankelijke software mogelijk niet. Als de bevoegdheden te open zijn, kunnen er beveiligingsproblemen optreden.

Als u het bericht 'Configuratie schrijven lukt niet: Bestand of directory bestaat niet' ziet, controleert u of de map /private/var/db/com.apple.xpc.launchd/config aanwezig is. Als de map ontbreekt, kunt u deze aanmaken met het volgende commando:

sudo mkdir -m 755 /private/var/db/com.apple.xpc.launchd/config

Voer het commando man launchctl uit voor meer informatie over het instellen van het umask in OS X Yosemite.

Umask voor gebruikersprogramma's in OS X Mavericks en lager

In OS X Mavericks en lager maakt u een /etc/launchd-user.conf bestand aan met umask nnn. Vervang nnn door de gewenste umask-waarde, zoals 027 of 002. Met dit commando wordt het umask van de gebruiker ingesteld voor alle programma's die deze opent, zoals de Finder, Teksteditor of Final Cut Pro. Hiermee worden eveneens de bevoegdheden van nieuwe bestanden geregeld die met deze programma's worden aangemaakt.

Als u OS X Lion gebruikt, moet u bijwerken naar OS X Lion 10.7.4 of hoger. Nadat u het systeem hebt bijgewerkt, wordt het umask van de gebruiker toegepast op alle bestanden en mappen die in Finder worden aangemaakt.

Umask voor systeemprocessen in OS X Mavericks en lager

In OS X-versies lager dan Yosemite maakt u een /etc/launchd.conf bestand aan met umask nnn. Vervang nnn door de gewenste umask-waarde, zoals 027 of 002. Hiermee wordt het umask voor alle processen ingesteld. Het wordt sterk afgeraden om deze waarde wijzigen omdat deze de bevoegdheden wijzigt voor bestanden die door de systeemsoftware worden gebruikt. Als de bevoegdheden te beperkt zijn, werkt afhankelijke software mogelijk niet. Als de bevoegdheden te open zijn, kunnen er beveiligingsproblemen optreden.

Umask voor een specifieke LaunchAgent of LaunchDaemon

In Mac OS X 10.4 en hoger kunnen ervaren beheerders een afzonderlijk umask instellen voor een specifieke LaunchAgent of LaunchDaemon. De beheerder kan dit doen door de waarde van een umask toe te voegen aan het bestand launchd plist. Deze instelling overschrijft (alleen voor dat proces) het ingestelde umask in /etc/launchd.conf of /etc/launchd-user.conf. Voer het commando man launchd.plist uit voor meer informatie over deze optie.

Publicatiedatum: