Guide d'administration système : Gestion des ressources des conteneurs et des zones Oracle Solaris

Détermination du projet par défaut des utilisateurs

Pour se connecter au système, l'utilisateur doit être affecté à un projet par défaut. L'utilisateur fait automatiquement partie de ce projet par défaut, même s'il ne figure pas dans la liste d'utilisateurs ou de groupes spécifiée dans ce projet.

Comme chaque processus du système a une appartenance au projet, il est nécessaire de prévoir un algorithme pour attribuer un projet par défaut au processus de connexion ou autre processus initial. Cet algorithme est décrit à la page de manuel getprojent(3C). Le système suit des étapes dans un ordre précis pour déterminer le projet par défaut. Si aucun projet par défaut n'est trouvé, la connexion utilisateur ou la demande de démarrrage d'un processus est refusée.

Le système procède dans l'ordre suivant pour déterminer le projet par défaut d'un utilisateur :

  1. Si l'utilisateur possède une entrée pour laquelle l'attribut project a été défini dans la base de données étendue des attributs utilisateur /etc/user_attr, la valeur de l'attribut project correspond au projet par défaut. Voir la page de manuel user_attr(4).

  2. Si un projet répondant au nom de user.id-utilisateur est présent dans la base de données project, ce projet est considéré comme le projet par défaut. Pour plus d'informations, reportez-vous à la page de manuel project(4).

  3. Si un projet intitulé group.nom-du-groupe est présent dans la base de données project, où nom-du-groupe représente le nom du groupe par défaut pour l'utilisateur, comme indiqué dans le fichier passwd, ce projet est considéré comme le projet par défaut. Pour plus d'informations sur le fichier passwd, reportez-vous à la page de manuel passwd(4).

  4. Si le projet spécial default est présent dans la base de données project, ce projet est considéré comme le projet par défaut.

Cette logique est fournie par la fonction de bibliothèque getdefaultproj. () Pour plus d'informations, voir la page de manuel getprojent(3PROJECT).