Ce chapitre décrit le RBAC (Contrôle d'accès basé sur les rôles) appliqué à Sun Cluster. Il aborde les sujets suivants :
Le tableau indiqué ci-dessous vous permet de déterminer la documentation à consulter pour l'installation et l'utilisation du RBAC. Les étapes spécifiques à suivre pour installer et utiliser le RBAC sous Sun Cluster sont présentées plus loin dans ce chapitre.
Pour |
Reportez-vous à la rubrique |
---|---|
En savoir plus sur le RBAC |
“Role-Based Access Control (Overview)” in System Administration Guide: Security Services |
Définir, gérer des éléments et utiliser le RBAC |
“Role-Based Access Control (Tasks)” in System Administration Guide: Security Services |
En savoir plus sur les éléments et outils du RBAC |
“Role-Based Access Control (Reference)” in System Administration Guide: Security Services |
Les commandes et options SunPlex Manager ainsi que certaines des commandes et options Sun Cluster exécutées à partir de la ligne de commande utilisent le RBAC pour l'authentification. Sun Cluster comprend plusieurs profils d'autorisations d'accès RBAC. Vous pouvez assigner ces profils d'autorisations d'accès aux utilisateurs ou aux rôles pour leur affecter différents niveaux d'accès à Sun Cluster. Sun fournit les profils d'autorisations d'accès indiqués ci-dessous avec le logiciel Sun Cluster.
Profil d'autorisations d'accès |
Autorisations incluses |
Cette autorisation permet à l'identité de rôle de |
---|---|---|
Commandes Sun Cluster |
Aucune, mais comprend une liste de commandes Sun Cluster s'exécutant avec euid=0 |
Exécuter des commandes Sun Cluster spécifiques permettant de configurer et de gérer un cluster, notamment : scswitch(1M) (options spécifiques) |
Utilisateur Solaris de base |
Ce profil d'autorisations d'accès existant contient des autorisations Solaris, ainsi que : |
Effectuer les mêmes opérations que l'identité de rôle de l'utilisateur Solaris de base, ainsi que : |
|
solaris.cluster.device.read |
Lire les informations sur les groupes de périphériques |
|
solaris.cluster.gui |
Accéder à SunPlex Manager |
|
solaris.cluster.network.read |
Lire les informations sur les multi-acheminements sur réseau IP Remarque : cette autorisation ne s'applique pas à SunPlex Manager. |
|
solaris.cluster.node.read |
Lire les informations sur les attributs des noeuds |
|
solaris.cluster.quorum.read |
Lire les informations sur les périphériques de quorum et l'état du quorum |
|
solaris.cluster.resource.read |
Lire les informations sur les ressources et les groupes de ressources |
|
solaris.cluster.system.read |
Lire le statut du cluster |
|
solaris.cluster.transport.read |
Lire les informations sur le transport |
Fonctionnement du cluster |
solaris.cluster.appinstall |
Installer des applications en cluster |
|
solaris.cluster.device.admin |
Exécuter des tâches administratives sur les attributs des groupes de périphériques |
|
solaris.cluster.device.read |
Lire les informations sur les aux groupes de périphériques |
|
solaris.cluster.gui |
Accéder à SunPlex Manager |
|
solaris.cluster.install |
Installer le logiciel de clustering Remarque : cette autorisation ne s'applique pas à SunPlex Manager. |
|
solaris.cluster.network.admin |
Exécuter des tâches administratives sur les attributs du multi-acheminement sur réseau IP Remarque : cette autorisation ne s'applique pas à SunPlex Manager. |
|
solaris.cluster.network.read |
Lire les informations sur le multi-acheminement sur réseau IP Remarque : cette autorisation ne s'applique pas à SunPlex Manager. |
|
solaris.cluster.node.admin |
Exécuter des tâches administratives sur les attributs des noeuds |
|
solaris.cluster.node.read |
Lire les informations sur les attributs des noeuds |
|
solaris.cluster.quorum.admin |
Exécuter des tâches administratives sur les périphériques de quorum et les attributs de l'état du quorum |
|
solaris.cluster.quorum.read |
Lire les informations sur les périphériques de quorum et sur l'état du quorum |
|
solaris.cluster.resource.admin |
Exécuter des tâches administratives sur les attributs des ressources et des groupes de ressources |
|
solaris.cluster.resource.read |
Lire les informations sur les ressources et groupes de ressources |
|
solaris.cluster.system.admin |
Administrer le système Remarque : cette autorisation ne s'applique pas à SunPlex Manager. |
|
solaris.cluster.system.read |
Lire le statut du cluster |
|
solaris.cluster.transport.admin |
Exécuter des tâches administratives sur les attributs de transport |
|
solaris.cluster.transport.read |
Lire les informations sur le transport |
Administrateur système |
Ce profil de d'autorisations Solaris existant contient les mêmes autorisations que le profil de gestion du cluster. |
Exécuter les mêmes opérations que l'identité de rôle de gestion du cluster, ainsi que d'autres opérations d'administration du système |
Gestion du cluster |
Ce profil d'autorisations d'accès contient les mêmes autorisations que le profil de fonctionnement du cluster, ainsi que les autorisations suivantes : |
Exécuter les mêmes opérations que l'identité de rôle de fonctionnement du cluster, ainsi que : |
|
solaris.cluster.device.modify |
Modifier les attributs des groupes de périphériques |
|
solaris.cluster.gui |
Accéder à SunPlex Manager |
|
solaris.cluster.network.modify |
Modifier les attributs du multi-acheminement sur réseau IP Remarque : cette autorisation ne s'applique pas à SunPlex Manager. |
|
solaris.cluster.node.modify |
Modifier les attributs des noeuds Remarque : cette autorisation ne s'applique pas à SunPlex Manager. |
|
solaris.cluster.quorum.modify |
Modifier les périphériques de quorum ainsi que les attributs d'état du quorum |
|
solaris.cluster.resource.modify |
Modifier les attributs des ressources et des groupes de ressources |
|
solaris.cluster.system.modify |
Modifier les attributs du système Remarque : cette autorisation ne s'applique pas à SunPlex Manager. |
|
solaris.cluster.transport.modify |
Modifier les attributs du transport |
Pour créer un rôle, vous devez utiliser un rôle possédant le profil d'autorisations d'administrateur principal ou exécuter l'opération en tant que root.
Démarrez l'outil Rôles administratifs.
Démarrez cet outil ainsi que la Solaris Management Console comme le décrit la rubrique “How to Assume a Role in the Console Tools” in System Administration Guide: Security Services. Puis, ouvrez la User Tool Collection et cliquez sur l'icône Rôles administratifs.
Lancez l'assistant Ajout de rôles administratifs.
Sélectionnez Ajouter un rôle administratif dans le menu Action afin de démarrer l'assistant Ajout d'un rôle administratif qui vous permettra de configurer les rôles.
Définissez un rôle disposant du profil d'autorisations de Gestion de cluster.
Utilisez les boutons Suivant et Retour pour naviguer entre les boîtes de dialogue. Vous remarquerez que le bouton Suivant n'est actif que lorsque vous avez renseigné tous les champs voulus. La dernière boîte de dialogue vous permet de voir l'ensemble des données entrées ; vous pouvez en modifier ou cliquer sur Terminer pour enregistrer le nouveau rôle. Le Tableau 2–1 fournit un résumé des boîtes de dialogue.
vous devez placer ce profil en premier dans la liste des profils attribués au rôle.
Ajoutez les utilisateurs devant utiliser les fonctions de SunPlex Manager ou les commandes de Sun Cluster au rôle créé.
La commande useradd(1M) vous permet d'ajouter un compte utilisateur sur le système. L'option -P affecte un rôle à un compte utilisateur.
Cliquez sur Terminé lorsque vous avez fini.
Ouvrez une fenêtre du terminal, connectez-vous en tant que root, puis démarrez et arrêtez le démon de la mémoire cache du service de noms.
Le nouveau rôle n'est valide qu'une fois redémarré le démon de la mémoire cache du service de noms. Après vous être connecté en tant que root, entrez la commande suivante :
# /etc/init.d/nscd stop # /etc/init.d/nscd start |
Boîte de dialogue |
Champs |
Description du champ |
---|---|---|
Étape 1 : entrer un nom de rôle |
Nom du rôle |
Nom abrégé du rôle. |
|
Nom complet |
Version longue du nom. |
|
Description |
Description du rôle. |
|
ID du rôle |
ID utilisateur pour le rôle, automatiquement incrémenté. |
|
Shell du rôle |
Shells de profils disponibles pour les rôles : C shell administrateur, bourne-shell administrateur ou korn-shell administrateur. |
|
Créez une liste de distribution du rôle |
Création d'une liste de distribution pour les utilisateurs auxquels est assigné ce rôle. |
Étape 2 : entrer un mot de passe de rôle |
Mot de passe du rôle |
********. |
|
Confirmer le mot de passe |
********. |
Étape 3 : sélectionner les autorisations d'accès au rôle |
Autorisations disponibles / autorisations accordées |
Permet d'attribuer ou de supprimer des profils d'autorisations. Vous remarquerez que le système vous permet de saisir plusieurs occurrences de la même commande. Les attributs affectés à la première occurrence d'une commande dans un profil d'autorisations sont prioritaires et toutes les autres occurrences sont ignorées. Les flèches vers le haut et vers le bas vous permettent d'en modifier l'ordre. |
Étape 4 : sélectionner un répertoire personnel |
Serveur |
Serveur du répertoire personnel. |
|
Chemin |
Chemin du répertoire personnel. |
Étape 5 : affecter des utilisateurs à ce rôle |
Ajouter |
Permet d'ajouter des utilisateurs pouvant utiliser ce rôle. Il doivent avoir la même portée. |
|
Supprimer |
Permet de supprimer les utilisateurs affectés à ce rôle. |
Connectez-vous en tant que superutilisateur ou utilisez un rôle permettant de créer de nouveaux rôles.
Sélectionnez une méthode pour créer un rôle :
Pour un rôle de portée locale, utilisez la commande roleadd (1M) pour définir le nouveau rôle local et ses attributs.
Pour un rôle de portée locale, vous pouvez aussi éditer le fichier user_attr(4 ) pour ajouter un utilisateur avec type=role .
Cette méthode n'est recommandée qu'en cas d'urgence car des erreurs peuvent facilement se glisser dans vos saisies.
Pour un rôle dans un service de noms, utilisez la commande smrole(1M) pour définir le nouveau rôle et ses attributs.
Cette commande requiert une authentification de la part du superutilisateur ou un rôle permettant de créer de nouveaux rôles. Vous pouvez appliquer smrole à tous les services de noms. Cette commande s'exécute en tant que client du serveur de la Solaris Management Console.
Démarrez puis arrêtez le démon de la mémoire cache du service de noms.
Les nouveaux rôles ne sont valides qu'une fois redémarré le démon de la mémoire cache du service de noms. Après vous être connecté en tant que root, entrez la commande suivante :
# /etc/init.d/nscd stop # /etc/init.d/nscd start |
Les étapes suivantes illustrent la création d'un rôle à l'aide de la commande smrole. Dans cet exemple, une nouvelle version du rôle Opérateur est créée, à laquelle sont affectés les profils d'autorisations Opérateur standard et Restauration des supports.
% su primaryadmin # /usr/sadm/bin/smrole add -H myHost -- -c "Custom Operator" -n oper2 -a johnDoe \ -d /export/home/oper2 -F "Backup/Restore Operator" -p "Operator" -p "Media Restore" Authenticating as user: primaryadmin Type /? for help, pressing <enter> accepts the default denoted by [ ] Please enter a string value for: password :: <type primaryadmin password> Loading Tool: com.sun.admin.usermgr.cli.role.UserMgrRoleCli from myHost Login to myHost as user primaryadmin was successful. Download of com.sun.admin.usermgr.cli.role.UserMgrRoleCli from myHost was successful. Type /? for help, pressing <enter> accepts the default denoted by [ ] Please enter a string value for: password ::<type oper2 password> # /etc/init.d/nscd stop # /etc/init.d/nscd start |
Pour visualiser le nouveau rôle (et tout autre rôle). utilisez la commande smrole avec l'option list, de la manière suivante :
# /usr/sadm/bin/smrole list -- Authenticating as user: primaryadmin Type /? for help, pressing <enter> accepts the default denoted by [ ] Please enter a string value for: password :: <type primaryadmin password> Loading Tool: com.sun.admin.usermgr.cli.role.UserMgrRoleCli from myHost Login to myHost as user primaryadmin was successful. Download of com.sun.admin.usermgr.cli.role.UserMgrRoleCli from myHost was successful. root 0 Super-User primaryadmin 100 Most powerful role sysadmin 101 Performs non-security admin tasks oper2 102 Custom Operator |
Pour modifier les propriétés d'un utilisateur, vous devez exécuter la User Tool Collection en tant que root ou utiliser un rôle disposant du profil d'autorisations Administrateur principal.
Démarrez l'outil Comptes utilisateurs.
Pour ce faire, démarrez la Solaris Management Console, comme indiqué dans la rubrique “How to Assume a Role in the Console Tools” in System Administration Guide: Security Services. Ouvrez ensuite la User Tool Collection, et cliquez sur l'icône Comptes utilisateurs.
Une fois l'outil Comptes utilisateurs lancé, les icônes correspondant aux comptes utilisateurs existants apparaissent dans le panneau d'affichage.
Cliquez sur le compte utilisateur à modifier et sélectionnez Propriétés dans le menu (ou double-cliquez simplement sur l'icône du compte utilisateur).
Dans la boîte de dialogue, cliquez sur l'onglet correspondant à la propriété à modifier, comme indiqué ci-dessous :
Pour modifier les rôles affectés à l'utilisateur, cliquez sur l'onglet Rôles et déplacez l'affectation de rôle à modifier dans la colonne appropriée : Rôles disponibles ou Rôles attribués.
Pour modifier les profils d'autorisations affectés à l'utilisateur, cliquez sur l'onglet Autorisations et déplacez-les dans la colonne appropriée : Autorisations disponibles ou Autorisations attribuées.
il est déconseillé d'affecter directement des profils d'autorisations aux utilisateurs. Il est préférable de laisser les utilisateurs s'attribuer eux-mêmes le rôle pour l'exécution d'applications privilégiées. Cela permet d'éviter que des utilisateurs normaux n'abusent des privilèges.
Connectez-vous en tant que superutilisateur ou utilisez un rôle permettant de modifier les fichiers utilisateur.
Utilisez la commande appropriée :
Pour modifier les autorisations, les rôles ou les profils d'autorisations affectés à un utilisateur de portée locale, utilisez la commande usermod (1M).
Pour modifier les autorisations, les rôles ou les profils d'autorisations affectés à un utilisateur du domaine local, vous pouvez également éditer le fichier user_attr.
Cette méthode n'est recommandée qu'en cas d'urgence car des erreurs peuvent facilement se glisser dans vos saisies.
Pour modifier les autorisations, les rôles ou les profils d'autorisations affectés à un utilisateur défini dans un service de noms, utilisez la commande smuser(1M).
Cette commande requiert l'authentification du superutilisateur ou d'un rôle permettant de modifier des fichiers utilisateur. Vous pouvez appliquer smuser à tous les services de noms. smuser s'exécute en tant que client du serveur de la Solaris Management Console.