Gérer les panneaux de réglages système sur macOS
Contrôlez quels panneaux de réglages système les utilisateurs peuvent accéder sur macOS Ventura et versions ultérieures. Ce tutoriel montre comment désactiver ou masquer des panneaux de préférences spécifiques pour maintenir la sécurité et empêcher les modifications de configuration non désirées sur votre Roundfleet.
Comprendre Réglages Système vs Préférences Système
macOS Ventura (13.0+) a remplacé "Préférences Système" par "Réglages Système". L'approche de gestion diffère entre les versions :
- macOS 13.0+ : Utilisez
DisabledSystemSettingset des identifiants de bundle se terminant par.extension - macOS 12.x et antérieures : Utilisez
DisabledPreferencePanesavec des identifiants de bundle différents
Désactiver les panneaux de réglages système
Script de désactivation de base
#!/bin/bash
# Désactiver un panneau de réglages système spécifique
defaults write "/Library/Preferences/com.apple.systempreferences" DisabledSystemSettings -array "com.apple.Battery-Settings.extension"
echo "Panneau de réglages système désactivé avec succès"
Désactiver plusieurs panneaux
#!/bin/bash
# Désactiver plusieurs panneaux de réglages système
defaults write "/Library/Preferences/com.apple.systempreferences" DisabledSystemSettings -array \
"com.apple.BluetoothSettings" \
"com.apple.Network-Settings.extension" \
"com.apple.Battery-Settings.extension"
echo "Plusieurs panneaux de réglages système désactivés"
Identifiants de bundle des réglages système
| Nom du panneau | Identifiant de bundle |
|---|---|
| Accessibilité | com.apple.Accessibility-Settings.extension |
| AirDrop et Handoff | com.apple.AirDrop-Handoff-Settings.extension |
| Identifiant Apple | com.apple.systempreferences.AppleIDSettings |
| Batterie | com.apple.Battery-Settings.extension |
| Bluetooth | com.apple.BluetoothSettings |
| Centre de contrôle | com.apple.ControlCenter-Settings.extension |
| Date et heure | com.apple.Date-Time-Settings.extension |
| Bureau et Dock | com.apple.Desktop-Settings.extension |
| Moniteurs | com.apple.Displays-Settings.extension |
| Extensions | com.apple.ExtensionsPreferences |
| Concentration | com.apple.Focus-Settings.extension |
| Game Center | com.apple.Game-Center-Settings.extension |
| Comptes Internet | com.apple.Internet-Accounts-Settings.extension |
| Clavier | com.apple.Keyboard-Settings.extension |
| Langue et région | com.apple.Localization-Settings.extension |
| Écran de verrouillage | com.apple.Lock-Screen-Settings.extension |
| Ouverture de session | com.apple.LoginItems-Settings.extension |
| Réseau | com.apple.Network-Settings.extension |
| Notifications | com.apple.Notifications-Settings.extension |
| Mots de passe | com.apple.Passwords-Settings.extension |
| Imprimantes et scanners | com.apple.Print-Scan-Settings.extension |
| Temps d'écran | com.apple.Screen-Time-Settings.extension |
| Économiseur d'écran | com.apple.ScreenSaver-Settings.extension |
| Partage | com.apple.Sharing-Settings.extension |
| Siri et Spotlight | com.apple.Siri-Settings.extension |
| Mise à jour logicielle | com.apple.Software-Update-Settings.extension |
| Son | com.apple.Sound-Settings.extension |
| Disque de démarrage | com.apple.Startup-Disk-Settings.extension |
| Stockage | com.apple.settings.Storage |
| Time Machine | com.apple.Time-Machine-Settings.extension |
| Touch ID et mot de passe | com.apple.Touch-ID-Settings.extension |
| Trackpad | com.apple.Trackpad-Settings.extension |
| Transfert ou réinitialisation | com.apple.Transfer-Reset-Settings.extension |
| Utilisateurs et groupes | com.apple.Users-Groups-Settings.extension |
| Portefeuille et Apple Pay | com.apple.WalletSettingsExtension |
| Fond d'écran | com.apple.Wallpaper-Settings.extension |
| Wi-Fi | com.apple.wifi-settings-extension |
Ouvrir les panneaux de réglages système à distance
Ouvrir un panneau spécifique
#!/bin/bash
# Ouvrir le panneau des réglages réseau
open "x-apple.systempreferences:com.apple.Network-Settings.extension"
echo "Panneau des réglages réseau ouvert"
Ouverture conditionnelle de panneau
#!/bin/bash
PANEL_ID="com.apple.Battery-Settings.extension"
# Vérifier si le panneau n'est pas désactivé avant de l'ouvrir
if ! defaults read "/Library/Preferences/com.apple.systempreferences" DisabledSystemSettings 2>/dev/null | grep -q "$PANEL_ID"; then
open "x-apple.systempreferences:$PANEL_ID"
echo "Panneau des réglages de batterie ouvert"
else
echo "Panneau des réglages de batterie désactivé"
fi
Réactiver les panneaux désactivés
Réactiver tous les panneaux
#!/bin/bash
# Supprimer toutes les restrictions des réglages système
defaults delete "/Library/Preferences/com.apple.systempreferences" DisabledSystemSettings
echo "Tous les panneaux de réglages système réactivés"
Réactiver des panneaux spécifiques
#!/bin/bash
# Obtenir les panneaux actuellement désactivés
CURRENT_DISABLED=$(defaults read "/Library/Preferences/com.apple.systempreferences" DisabledSystemSettings 2>/dev/null)
# Supprimer un panneau spécifique de la liste des désactivés (nécessite une logique personnalisée)
# Cet exemple montre le concept - implémentez selon vos besoins
defaults write "/Library/Preferences/com.apple.systempreferences" DisabledSystemSettings -array \
"com.apple.BluetoothSettings"
# Ajoutez les autres panneaux que vous voulez garder désactivés
echo "Panneaux de réglages système spécifiques réactivés"
Script de gestion d'entreprise
#!/bin/bash
# Gestion des réglages système d'entreprise
# Restreint l'accès aux panneaux de configuration sensibles
RESTRICTED_PANELS=(
"com.apple.Network-Settings.extension"
"com.apple.BluetoothSettings"
"com.apple.Security-Privacy-Settings.extension"
"com.apple.Software-Update-Settings.extension"
"com.apple.Users-Groups-Settings.extension"
)
# Appliquer les restrictions
defaults write "/Library/Preferences/com.apple.systempreferences" DisabledSystemSettings -array "${RESTRICTED_PANELS[@]}"
# Vérifier les restrictions
echo "Panneaux de réglages système désactivés :"
defaults read "/Library/Preferences/com.apple.systempreferences" DisabledSystemSettings 2>/dev/null || echo "Aucun panneau actuellement désactivé"
# Enregistrer l'action
logger "Roundfleet: Panneaux de réglages système restreints le $(date)"
Dépannage
Vérifier les restrictions actuelles
# Voir les panneaux actuellement désactivés
defaults read "/Library/Preferences/com.apple.systempreferences" DisabledSystemSettings
# Vérifier si un panneau spécifique est désactivé
if defaults read "/Library/Preferences/com.apple.systempreferences" DisabledSystemSettings 2>/dev/null | grep -q "com.apple.Battery-Settings.extension"; then
echo "Le panneau batterie est désactivé"
else
echo "Le panneau batterie est accessible"
fi
Supprimer toutes les restrictions
# Réinitialisation d'urgence - réactiver tous les panneaux
sudo defaults delete "/Library/Preferences/com.apple.systempreferences" DisabledSystemSettings
sudo killall cfprefsd
Cas d'utilisation courants
| Scénario | Panneaux recommandés à désactiver |
|---|---|
| Postes partagés | Utilisateurs et groupes, Mise à jour logicielle, Réseau |
| Appareils BYOD | Identifiant Apple, Transfert ou réinitialisation, Utilisateurs et groupes |
| Mode kiosque | Tous sauf les panneaux essentiels au fonctionnement |
| Laboratoires éducatifs | Réseau, Mise à jour logicielle, Touch ID et mot de passe |
| Sécurité d'entreprise | Mise à jour logicielle, Transfert ou réinitialisation, Partage |
Notes importantes
- Compatibilité macOS : Ces scripts fonctionnent uniquement sur macOS 13.0 (Ventura) et versions ultérieures
- Expérience utilisateur : Les panneaux désactivés apparaissent grisés mais restent visibles
- Redémarrage système : Les modifications prennent effet immédiatement sans redémarrage
- Persistance : Les paramètres persistent entre les sessions utilisateur et les redémarrages système
Pour les appareils fonctionnant sous macOS 12.x et antérieures, utilisez l'approche de gestion des préférences système héritée avec des identifiants de bundle différents.