Gibt es eine Möglichkeit, eine Liste bestimmter Apps unter macOS zu blockieren?
Ich habe nach Lösungen wie Cisdem gesucht, aber es gibt einige Lücken in der Funktionsweise, die mir nicht gefallen.
Ich möchte verhindern, dass eine App auf meinem Mac ausgeführt oder sogar installiert wird. Die App kann über den App Store und das Web installiert werden. Ich bin mir nicht sicher, wie ich vorgehen soll. Die Aktivierung der Kindersicherung funktioniert nicht, da Administratorrechte erforderlich sind.
Die spezifische App, die ich blockieren möchte, ist Apple Configurator.
Irgendwelche Ideen?
Sie können spctl
(Gatekeeper) verwenden, um Listen genehmigter und nicht genehmigter Apps zu erstellen.
Angenommen, Sie möchten Mail zulassen, aber Chrome blockieren.
sudo spctl --add --label "ApprovedApps" /Applications/Mail.app
sudo spctl --add --label "DeniedApps" /Applications/Chrome.app
Der obige Befehl "kennzeichnet" Mail und Chrome als "Genehmigt" bzw. "Abgelehnt" (Sie können Ihre eigenen Deskriptoren verwenden).
Um Apps zu aktivieren/deaktivieren, geben Sie nun die Befehle aus:
sudo spctl --enable --label "ApprovedApps"
sudo spctl --disable --label "DeniedApps"
Dies hat den Vorteil, dass Sie zum Hinzufügen einer weiteren App zu einer der beiden Listen nur das entsprechende Label hinzufügen müssen:
sudo spctl --add --label "ApprovedApps" /Applications/Another.app
Außerdem können Sie die Ausführung von Code aus dem Mac App Store verbieten (zu finden in der spctl
Manpage - man spctl
).
spctl --disable --label "Mac App Store"
Dadurch wird verhindert, dass jemand eine App aus dem App Store herunterlädt und installiert/ausführt.
sudoers
Wie in den Kommentaren erwähnt, kann ein anderer Administrator alles rückgängig machen, was ein Administrator tun kann. Die Verwendung spctl
erfordert root, aber das Bearbeiten der sudoers-Datei, um den Zugriff auf einen bestimmten Befehl einzuschränken, kann andere Benutzer/Administratoren daran hindern, Ihre Änderungen rückgängig zu machen.
Siehe Wie kann man verhindern, dass sudo-Benutzer bestimmte Befehle ausführen? Einzelheiten zum Konfigurieren einer „Whitelist mit Ausnahme“ in Ihrer sudoers
Datei.
Um beispielsweise dem Benutzer Sam Zugriff auf alle Befehle außer spctl
zu gewähren , würden Sie die sudoers-Datei einfügen:
sam ALL = ALL, !/usr/sbin/spctl
Nun, dies ist eine "schnelle und schmutzige" Methode, um den Zugriff auf zu verhindern, spctl
aber letztendlich ist es nicht effektiv, denn wenn der andere Administrator Ihre Strategie erkennt, muss er / sie nur den Befehl umbenennen und er hat Zugriff.
Aus der sudoers
Manpage:
Wenn ein Benutzer über sudo ALL verfügt, hindert ihn im Allgemeinen nichts daran, sein eigenes Programm zu erstellen, das ihm eine Root-Shell gibt (oder seine eigene Kopie einer Shell erstellt), unabhängig von einem `!' Elemente in der Benutzerspezifikation.
Um es wirklich zu sperren, müssten Sie entweder den anderen Benutzer dazu zwingen, su
ein anderer Benutzer (dh Operator) zu sein, oder eine Whitelist mit zulässigen Befehlen erstellen, die standardmäßig alles andere blockiert. Dies ist jedoch zeitaufwändig und ziemlich gefährlich, da Sie Personen von kritischen Funktionen ausschließen können.
Zeltbau
Fahrrad
Allan
BSUK
Student