10.11 El Capitan Contrôles parentaux

mobilo

Membre actif
28 Octobre 2006
207
2
Bonjour,

A mon travail je gère une salle de cours info avec 5 iMacs.
Il y a un compte administrateur et un compte utilisateur.
Je veux limiter certains accès et certaines applis pour l'utilisateur.

J'ouvre la session admin et je vais dans "utilisateurs et groupes" des préférences système.

J'ouvre le cadenas pour déverrouiller et sélectionne le compte "utilisateur".

Je clique sur "ouvrir les contrôles parentaux".

Ensuite je coche plusieurs applis pour les bloquer sur la session utilisateur. (Photo Booth, mails, messages, Time Machine, etc.).

Mais quand j'ouvre ensuite la session utilisateur, les contrôles parentaux ne sont pas pris en compte.
Les applis sélectionnées ne sont pas bloquées.

J'ai réessayé et encore réessayé, les contrôles parentaux de la session utilisateurs sont inopérants.

Peut-être faut-il respecter une stricte procédure pour rendre effectifs ces contrôles?

Merci de votre aide.
 
Salut mobilo

Dans le panneau "Contrôle parental" correspondant à l'utilisateur contrôlé > onglet "Applications" > tu as bien dans le bas du panneau une case générale cochable : "Limiter les applications sur ce Mac".

J'attire ton attention sur la souscription de cette option : "Autoriser l'utilisateur à n'ouvrir que les applications indiquées. Un mot-de-passe administrateur est requis pour ouvrir les autres applications"

En-dessous > tu as la sous-rubrique intitulée : "Applications autorisées" avec 2 options cochables :

► ▢ Autres applications
► ▢ Utilitaires​

=> si tu coches ces 2 cases, et si tu bascules vers le bas les 2 onglets > tu t'aperçois que toutes les applications du répertoire Applications et toutes celles de sous-dossier Utilitaires sont cochées => ce qui signifie : autorisées à l'utilisation !

À toi de décocher sélectivement les applications que tu veux bloquer.

En résumé de ce laïus : une fois la case de la rubrique générale : "Limiter les applications sur ce Mac" cochée > toute case cochée d'application spécifique signifie > "autoriser" ; toute case décochée > signifie "interdire".

Je pense, d'après ta déclaration :
Les applis sélectionnées ne sont pas bloquées.
que tu as inversé le sens des actions : ce sont les applis -sélectionnées qui seront bloquées...
 
Bonjour macomaniac,

Merci pour cette précision très claire.
J'ai effectivement inversé le sens des actions dans mon premier post.
Les applis bloquées dans les contrôles parentaux sont bien les applis décochées dans la rubrique "Autres applications".
Nous sommes bien d'accord.

Je vous assure avoir essayé encore et encore. La validation des applis cochées (autorisées) et décochées (non-autorisées) est instable et varie d'une machine à une autre. Pour rappel, j'administre 5 machines dans la salle.

Je finis malgré tout par y arriver, mais au prix de nombreuses actions des contrôles parentaux et de nombreuses vérifications.

Je pense, après de nombreuses heures passées sur ces contrôles, qu'il y aurait un bug entre la gestion des autorisations d'ouverture des applis et la gestion du dock dans l'onglet "Autre" des contrôles parentaux.
 
Les iMacs sont tous dans la même version de système ? Dans ce cas pourquoi gérer une image disque de référence que tu paramètres comme tu veux et que tu répliques sur les iMacs. Cela ferait moins de travail et en plus tu peux remettre facilement tes postes au "propre".
 
:coucou: mobilo

Je t'ai trouvé une solution que je te soumets : elle est un peu besogneuse (car elle implique de modifier les droits sur chaque application concernée par l'exclusion en 2 commandes dans le «Terminal» au cas par cas) > mais je te la garantis 100% opératoire.

Je te décris son contexte =>

- une application Apple native est un répertoire (dissimulé sous une icône d'objet solide) contenant une petite arborescence de sous-dossiers avec des fichiers terminaux, dont un fichier exécutable contenant le code de l'application.

- de haut en bas de cette arborescence et notamment sur le fichier exécutable de l'application, existent 3 « accédants » (ayant droit d'accès) qui sont : user=root (utilisateur propriétaire = System Administrator) > primary_group=wheel (groupe primaire = le groupe-Système wheel dont root seul est membre a priori) > secondary_group=everyone (groupe secondaire = n'importe qui capable d'ouvrir une session dans l'OS : admin, ou ayant compte standard, ou encore simple visiteur).

- voici les permissions de ces 3 accédants : root=rwx (read=lecture + write=écriture + execute=exécution de l'entrée aux répertoires ou du code d'un fichier exécutable) > wheel=r-x (lecture > pas d'écriture > exécution) > everyone=r-x (lecture > pas d'écriture > exécution). En valeur octale, la permission r=4, w=2, x=1 > ce qui donne pour root 4+2+1 = 7 > pour wheel 4+0+2 = 5 > pour everyone 4+0+1 = 5 > soit 755 root wheel everyone de haut en bas de l'application.

- qu'est-ce qui se passe quand tu doubles-cliques l'icône d'une application ? Que ce soit toi, l'admin mobilo, ou un utilisateur standard toto de tes élèves > aucun de vous 2 n'est l'user:root, ni ne fait partie du primary_group:wheel > c'est donc en tant que membre de la tribu informelle du secondary_group:everyone que vous pouvez lancer l'exécution du fichier exécutable recelé dans le répertoire de l'application.

Maintenant : suppose que par une commande dans le «Terminal» > je sucre les permissions d'accès du secondary_group:everyone en les ramenant à 0 en valeur octale (ni lecture, ni écriture, ni exécution) > ce qui me donne donc des permissions récursives (de haut en bas du répertoire) = 750 sur l'application  => conséquence : ni moderno (quoique admin), ni toto (simple standard) ne peuvent plus lancer l'application (car surtout la suppression de la permission exécutive x empêche d'entrer dans le répertoire et en dernier lieu d'exécuter le code du fichier exécutable) > l'application est complètement verrouillée. Panneau (par exemple) :

494167_original.png

Bon, mais suppose à présent que tu passes récursivement sur la même application une commande modifiant le primary_group, en substituant à wheel le groupe admin ? Alors rien de changé pour toto : il garde l'interdiction de lancer l'application > mais par contre moderno récupère la capacité d'utiliser l'application, car s'il est toujours coincé en tant que membre du secondary_group:everyone qui a 0 permissions > il est décoincé en tant que membre du nouveau primary_group:admin, qui a gardé les permissions = 5 (lecture + exécution) affectées au primary_group .

Suppose que l'application visée soit «Mail» > il suffit de passer les 2 commandes :
Bloc de code:
sudo chmod -R 750 /Applications/Mail.app
sudo chown -R root:admin /Applications/Mail.app

ce qui n'est pas si contraignant que ça, si tu décomposes en 2 la saisie de ces commandes :

simple copier-coller (depuis un fichier «TextEdit» où tu t'es enregistré ces départs de commande) de :
Bloc de code:
sudo chmod -R 750
sudo chown -R root:admin
chaque fois > puis saut d'un espace avec la barre d'espacement > puis glisser-déposer direct dans le «Finder» de l'icône de l'application recelée dans le répertoire des Applications > dans le fenêtre du «Terminal» où le chemin à l'application et son nom seront automatiquement renseignés. Reste à exécuter la commande en sudo (ce qui implique la première fois de saisir à l'aveugle le mot-de-passe admin).

Sinon, tu pourrais encore avoir une doublette de commandes préfabriquées où le départ de commande soit en facteur commun d'une série d'objets constituée par une liste d'applications (chemin à l'objet et nom chaque fois). Exemple si tu veux modifier les droits sur «Mail» et «Time Machine» et «Messages» et «Photo Booth» =>
Bloc de code:
sudo chmod -R 750 /Applications/Mail.app /Applications/Time\ Machine.app /Applications/Messages.app
/Applications/Photo\ Booth.app

sudo chown -R root:admin /Applications/Mail.app /Applications/Time\ Machine.app
/Applications/Messages.app /Applications/Photo\ Booth.app
étant entendu que tu passes séparément les 2 commandes.

[tu pourrais inversement avoir une doublette de commandes de réversion de ta customisation, permettant de revenir à la situation originale]

Il y aurait d'autres façons de réhabiltier mobilo à la capacité d'exécuter les applications interdites à toto = en passant par les ACL qui listent des droits supplémentaires (par exemple mobilo pourrait se remettre ainsi en capacité exécutive sans que le primary_group: wheel soit modifié).

=> à toi de voir si ces modifications a la mano correspondent à tes attentes. Je pense qu'avoir un fichier «TexEdit» avec une paire de commandes chmod et chown sur la liste complète des applications à affecter, ainsi que la paire des commandes de réversion > fichier sur une clé USB par exemple > serait commode à l'exécution sur plusieurs bécanes > et tu aurais ainsi la liste des applications que tu as modifiées au niveau de leurs droits, avec la possibilité de renverser la vapeur...
 
Bonjour Macomaniac,
Quel travail ! j'ai bien peur que votre solution soit effectivement trop besogneuse pour l'utilisateur que je suis.
Mais votre explication d'expert pourra en aider d'autres plus calés en matière d'OSX.
Et puis, après beaucoup d'efforts, je suis arrivé à mes fins sur le contrôle des applis pour un utilisateur Standard.
En cas d'éventuels problèmes sur les 5 ordinateurs en pleine période d'utilisation, j'ai procédé à un Time Machine sur chaque ordinateur.
Mais aujourd'hui, compte tenu que les machines ont toutes exactement le même profil software et hardware, je me dis qu'une seule sauvegarde d'un ordi avec Time Machine aurait suffi pour ensuite potentiellement restaurer n'importe quel machine de salle en cas de pépin.
Qu'en pensez-vous? Mais peut-être que cette question devrait faire l'objet d'un nouvelle discussion spécifique sur le forum.
Merci à vous.