Gatekeeper peut-il être désactivé via un terminal dans OS X 10.8 Mountain Lion?

17

Comment désactiver Gatekeeper via les commandes de terminal dans OS X 10.8 Mountain Lion? Je cherche à reproduire la sélection du volet de préférences Sécurité et confidentialité pour permettre aux applications téléchargées depuis n'importe où de s'exécuter:

entrez la description de l'image ici

En ayant une commande de terminal, je peux écrire un script pour effectuer cette tâche à distance plutôt que d'aller manuellement sur chaque Mac et de modifier ces paramètres avec une souris et plusieurs clics.

Brian McCarthy
la source

Réponses:

22

L' outil spctl devrait faire le travail.

sudo spctl --master-disabledésactivera les contrôles Gatekeeper et sudo spctl --master-enableles réactivera (au paramètre par défaut de l'App Store et des applications signées - il ne semble pas que le définir sur l'App Store uniquement soit possible).

Notez qu'il ne générera aucune erreur si vous l'exécutez sans sudoautorisations, mais qu'il sudoest en fait obligatoire.

robmathers
la source
1
La page de manuel indique que spctl --disable --label "Mac App Store" Désactivera l'installation de toutes les applications Mac App Store, il semblerait donc possible qu'elle ne puisse --activer que les applications MAS.
Megan Walker
@SamuelWalker Je ne l'avais pas remarqué auparavant, mais ce qui serait vraiment nécessaire, c'est une règle ou une étiquette équivalente à toutes les applications non App Store. Sinon, c'est théorique, car vous ne pouvez pas désactiver toutes les autres sources indépendamment de ce que je peux dire.
robmathers
C'est vrai. Je viens de regarder dans la base de données SystemPolicy réelle, et d'après ce que je peux dire, il n'y a que quelques étiquettes qu'elle utilise. "GKE", "Developer ID", "Mac App Store", "Apple System", "Apple Installer", "No Matching Rule". Bien que ces chaînes soient arbitraires [et peuvent changer dans les futures versions OSX] cela peut être trop hacky, mais il semble possible que vous puissiez désactiver manuellement GKE et Developer ID.
Megan Walker
@robmathers, merci pour votre réponse! J'ai appris une autre solution: vous pouvez cliquer avec le bouton droit sur le programme d'installation et cliquer sur Ouvrir (ce qui ouvrira l'application sans vérification sans gardien)
Brian McCarthy
Oui, c'est certainement le moyen le plus simple si vous avez juste besoin d'exécuter quelque chose de manière ponctuelle.
robmathers
3

L'une ou l'autre de ces options désactive également les boîtes de dialogue Gatekeeper (après le redémarrage), mais elles ne modifient pas le paramètre indiqué dans les Préférences Système.

sudo defaults write /var/db/SystemPolicy-prefs.plist enabled -string no
defaults write com.apple.LaunchServices LSQuarantine -bool false

Je ne sais pas si spctl --master-disableest en quelque sorte différent de la désactivation de Gatekeeper dans les Préférences Système, mais spctl --statuspasse à assessments disabledaprès avoir désactivé Gatekeeper dans les Préférences Système.

Lri
la source