IT-beheerdershandleiding (MDM)
Implementatie via Mobile Device Management (MDM)
Met de Network Share Mounter kun je shares centraal beheren, applicatie-instellingen afdwingen en authenticatie-instellingen distribueren via een standaard macOS-configuratieprofiel.
Preference Domain: de.fau.rrze.NetworkShareMounter
Om de configuratie von alle instellingssleutels te vereenvoudigen - zonder handmatig een aangepast configuratieprofiel in XML-formaat te hoeven maken of bewerken - bieden wij twee handige bestanden aan: een JSON-manifestschema voor Jamf Pro en een manifest voor de iMazing Profile Editor.
Voor eenvoudige distributie van de app via AutoPKG bieden wij ook bijbehorende recepten aan de.fau.rrze.pkg.networkShareMounter.
1. De managedNetworkShares Array
De kern van de payload is de managedNetworkShares array. Hier definieer je de shares die je voor je gebruikers wilt koppelen.
Opmerking: Je kunt de variabele %USERNAME% gebruiken in paden; deze wordt automatisch vervangen door de macOS-inlognaam van de huidige gebruiker.
<key>managedNetworkShares</key>
<array>
<dict>
<key>networkShare</key>
<string>smb://fileserver.company.local/global</string>
<key>authType</key>
<string>krb</string>
</dict>
<dict>
<key>networkShare</key>
<string>smb://home.company.local/%USERNAME%</string>
<key>authType</key>
<string>password</string>
<!-- NIEUW in V4: Optioneel de lokale koppelpuntnaam centraal definiëren -->
<key>mountPoint</key>
<string>Global-Company-Data</string>
</dict>
</array>
2. Beschikbare configuratiesleutels
Hieronder vind je een uitgebreide lijst van alle beschikbare MDM-sleutels die je kunt distribueren om het gedrag van de app te configureren.
| Sleutel | Type | Standaard | Beschrijving |
|---|---|---|---|
managedNetworkShares | Array of Dict | Array met woordenboeken (dictionaries) voor elke share (vereist networkShare en authType, optioneel mountPoint en username). | |
autostart | Boolean | false | Indien true, start de app automatisch wanneer de gebruiker inlogt. |
canChangeAutostart | Boolean | true | Indien false, wordt voorkomen dat de gebruiker de autostart-optie in de instellingen kan in-/uitschakelen. |
canQuit | Boolean | true | Indien true, mag de gebruiker de app via de menubalk afsluiten. |
unmountOnExit | Boolean | true | Indien true, worden beheerde shares automatisch ontkoppeld wanneer de app wordt afgesloten. |
location | String | - | ⚠️ Pad waar netwerkshares worden gekoppeld. Het wordt sterk aanbevolen om dit leeg te laten om de standaard te gebruiken. |
kerberosRealm | String | - | Kerberos/AD-domein voor gebruikersauthenticatie (bijv. EXAMPLE.COM). Schakelt automatisch AD/Kerberos ticketbeheer in. |
helpURL | String | - | URL naar de interne helpdesk of IT-documentatie van jouw organisatie. |
showMountsInMenu | Boolean | true | Toont gekoppelde/ontkoppelde shares direct in de menubalk voor snelle toegang. |
usernameOverride | String | - | Overschrijft de %USERNAME% variabele. Handig als de lokale Mac-gebruikersnaam verschilt van de AD/netwerk-gebruikersnaam. |
Opmerking: De oude networkShares array uit versie 2 is verouderd, maar wordt nog steeds ondersteund voor achterwaartse compatibiliteit.
3. Aanpassing van de menubalk
Je hebt gedetailleerde controle over wat de gebruiker in de menubalk ziet. Gebruik de volgende string-sleutels en stel hun waarde in op hidden (verwijdert het item volledig) of disabled (maakt het item grijs). Als een sleutel niet is gedefinieerd, wordt het menu-item normaal weergegeven.
menuConnectSharesmenuDisconnectSharesmenuShowSharesMountDirmenuShowSharesmenuSettingsmenuCheckUpdatesmenuAbout
Voorbeeld-payload om instellingen en updates te verbergen:
<key>menuSettings</key>
<string>hidden</string>
<key>menuCheckUpdates</key>
<string>hidden</string>
4. Software-updatebeheer (Sparkle)
Network Share Mounter gebruikt het Sparkle-framework voor automatische updates. In bedrijfsomgevingen wil je dit meestal uitschakelen om updates via je MDM te beheren.
| Sleutel | Type | Standaard | Beschrijving |
|---|---|---|---|
enableAutoUpdater | Boolean | true | Hoofdschakelaar voor het update-framework. Instellen op false om automatische updates volledig uit te schakelen. |
SUEnableAutomaticChecks | Boolean | true | Als enableAutoUpdater true is, regelt dit of de app actief naar updates zoekt. |
SUAutomaticallyUpdate | Boolean | true | Indien true, worden updates automatisch gedownload en geïnstalleerd zonder bevestigung van de gebruiker. |
5. Autostart & Achtergronduitvoering
De initiële autostart activeren
Vanwege het beveiligingsontwerp van macOS moet een app minstens één keer worden gestart voordat de eigen autostart-routine het kan overnemen. Om een volledig stille implementatie zonder gebruikersinteractie te garanderen, kun je je MDM (bijv. Jamf Pro) zo configureren dat de app één keer wordt gestart, direct na de installatie of tijdens de eerste keer inloggen.
Voorbeeld Jamf Policy:
- Trigger: Login
- Frequency: Once per user per computer
- Command:
sudo -u $(stat -f%Su /dev/console) open -a "/Applications/Network Share Mounter.app"
Voorkomen dat gebruikers de autostart uitschakelen (macOS 13+)
Vanaf macOS 13 (Ventura) kunnen gebruikers achtergrondapplicaties vrij in- of uitschakelen via de Systeeminstellingen. Om de autostart af te dwingen en te voorkomen dat gebruikers de Network Share Mounter uitschakelen, moet je samen met je configuratieprofiel een Managed Login Items-payload implementeren:
- Rule Type:
Bundle Identifier - Rule Value:
de.fau.rrze.NetworkShareMounter - Rule Comment:
Prevent disabling Network Share Mounter autostart
6. Besturing via UNIX-signalen
De Network Share Mounter kan worden bestuurd via UNIX-signalen. Hiermee kunnen alle geconfigureerde shares gericht worden gekoppeld of ontkoppeld via een script, zonder de app-interface te gebruiken. Dit is bijzonder nuttig om in een Self Service Portal taken aan te bieden waarmee gebruikers netwerkschijven können “repareren”.
Beschikbare signalen
| Signaal | Actie |
|---|---|
SIGUSR1 | Alle shares ontkoppelen (Unmount) |
SIGUSR2 | Alle shares koppelen (Mount) |
Voorbeeld:
# Alle shares ontkoppelen
kill -SIGUSR1 <PID>
# Alle shares koppelen
kill -SIGUSR2 <PID>
Opmerking: <PID> is de proces-ID van de actieve Network Share Mounter.
7. Bekende MDM-problemen
Jamf Pro: Inventaris-update (recon) blijft hangen
Als je de standaardconfiguratie gebruikt en shares direkt in de thuismap van de gebruiker koppelt (bijv. ~/Network shares), kan de Jamf Pro-inventarisatie (recon) voor onbepaalde tijd blijven hangen. Dit gebeurt omdat Jamf probeert de opslaggrootte van de gehele thuismap te berekenen, waardoor in feite alle verbonden netwerkshares worden gescand.
Oplossing: Ga in Jamf Pro naar Settings > Computer Management - Management Framework > Inventory Collection en schakel de optie Include home directory sizes uit. Als alternatief kun je het standaard koppelpad van de app wijzigen via je MDM-profiel.
Network Share Mounter v3
Als u nog steeds afhankelijk bent van de oude Network Share Mounter (v3, v2, Legacy), kunt u de documentatie vinden in onze repository.