28 votes

Pourquoi y a-t-il tant d'utilisateurs valides sur MacOS ?

En consultant le moniteur d'activité, je vois de nombreux utilisateurs différents (autres que mon propre compte et le compte racine) responsables de processus individuels. Pourquoi les processus sont-ils répartis entre plusieurs utilisateurs créés par le système d'exploitation ? Pourquoi ne sont-ils pas simplement répartis entre le compte racine et le compte utilisateur en cours d'utilisation ?

Activity Monitor showing a list of various underscore-prefixed usernames beside processes.

3 votes

Je ne suis pas un expert donc je ne peux pas donner une réponse complète mais une partie du problème est que vous ne voulez pas que chaque programme ou partie de logiciel ait un accès complet à Root.

12 votes

Au fait, le terme pour ces derniers est compte du service (à distinguer d'un compte utilisateur o compte admin ).

8 votes

C'est normal dans le monde Unix (MacOS, Solaris, BSD) et Linux. Exécuter un processus en tant que Root permet à toute personne qui pirate ce processus d'exécuter du code en tant que Root (car ce processus est déjà Root) et exécuter ce processus en tant que vous-même permet aux pirates d'accéder éventuellement à vos fichiers.

73voto

grg Points 181593

C'est le le principe du moindre privilège .

Ce principe consiste à n'accorder à un compte d'utilisateur ou à un processus que les privilèges essentiels à l'exécution de sa fonction prévue. Par exemple, un compte d'utilisateur dont le seul but est de créer des sauvegardes n'a pas besoin d'installer de logiciels : il n'a donc le droit que d'exécuter des applications de sauvegarde et des applications liées à la sauvegarde. Tout autre privilège, tel que l'installation de nouveaux logiciels, est bloqué.

https://en.wikipedia.org/wiki/Principle_of_least_privilege

De nombreux démons n'ont besoin d'accéder qu'à un périphérique matériel spécifique ou à des fichiers spécifiques, ils sont donc exécutés sous un compte utilisateur dédié. Cela est fait pour la sécurité : de cette façon, même s'il y a un bogue ou une mauvaise configuration dans l'un de ces services, cela ne peut pas conduire à une attaque complète du système, parce que l'attaquant sera limité à ce que ce service peut faire et ne sera pas en mesure d'écraser les fichiers, espionner les processus, etc.

https://unix.stackexchange.com/a/197155/45383

1 votes

Réponse fantastique, j'ajouterais qu'il y a encore beaucoup de cas où un compte de service a plus de privilèges que ce dont un de ses processus a strictement besoin. Mais ils sont regroupés dans les comptes de service parce que sur les 10 privilèges nécessaires à chaque processus, 9 sont partagés, et il y a un privilège supplémentaire dont chaque processus a besoin. Ou similaire. Le principe du moindre privilège est presque toujours équilibré avec la gestion pratique du logiciel. Peut-être que ce n'est pas le cas pour OSX, je n'ai aucune idée de ce qui se passe à l'intérieur, mais dans la plupart des cas du monde réel, je ont vu.

0 votes

Par exemple, est-il possible de se connecter en tant qu'"utilisateur virtuel" "_coreaudiod". Jusqu'à présent, je ne connais que deux utilisateurs. A savoir le user directory et root . Merci beaucoup

0 votes

@DarwinOSX La plupart des comptes de service ne peuvent pas être utilisés comme comptes de connexion (et sur un système conforme aux pratiques modernes, le compte Root ne peut pas non plus se connecter).

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X