Ce chapitre décrit le RBAC (Contrôle d'accès basé sur les rôles) appliqué à Sun Cluster. Il aborde les sujets suivants :
Modification des propriétés RBAC d'un utilisateur à l'aide de l'outil Comptes utilisateur
Modification des propriétés RBAC d'un utilisateur à partir de la ligne de commande
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 d'installation et d'utilisation du RBAC sous Sun Cluster sont présentées plus loin dans ce chapitre.
À |
Reportez-vous à la rubrique |
---|---|
En savoir plus sur le RBAC |
Chapitre 8, Using Roles and Privileges (Overview) du System Administration Guide: Security Services |
Définir, gérer des éléments et utiliser le RBAC | |
En savoir plus sur les éléments et outils du RBAC |
Chapitre 10, Role-Based Access Control (Reference) du System Administration Guide: Security Services |
SunPlex Manager et les commandes et options Sun Cluster sélectionnées que vous exécutez sur la ligne de commande utilisent le RBAC pour obtenir des autorisations. 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 sélectionnées) |
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 relatives aux groupes de périphériques |
|
solaris.cluster.gui |
Accéder à SunPlex Manager |
|
solaris.cluster.network.read |
Lire les informations relatives au multi-acheminement sur réseau IP |
|
solaris.cluster.node.read |
Lire les informations relatives aux attributs des noeuds |
|
solaris.cluster.quorum.read |
Lire les informations relatives aux périphériques de quorum et à l'état du quorum |
|
solaris.cluster.resource.read |
Lire les informations relatives aux ressources et aux groupes de ressources |
|
solaris.cluster.system.read |
Lire le statut du cluster |
|
solaris.cluster.transport.read |
Lire les informations relatives au 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 relatives aux groupes de périphériques |
|
solaris.cluster.gui |
Accéder à SunPlex Manager |
|
solaris.cluster.install |
Installer le logiciel de clustering |
|
solaris.cluster.network.admin |
Exécuter des tâches administratives sur les attributs du multi-acheminement sur réseau IP |
|
solaris.cluster.network.read |
Lire les informations relatives au multi-acheminement sur réseau IP |
|
solaris.cluster.node.admin |
Exécuter des tâches administratives sur les attributs des noeuds |
|
solaris.cluster.node.read |
Lire les informations relatives aux 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 relatives aux périphériques de quorum et à 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 relatives aux ressources et aux groupes de ressources |
|
solaris.cluster.system.admin |
Administrer le système |
|
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 relatives au transport |
Administrateur système |
Ce profil 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 |
|
solaris.cluster.node.modify |
Modifier les attributs des noeuds |
|
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 |
|
solaris.cluster.transport.modify |
Modifier les attributs du transport |
Pour créer un rôle, vous devez endosser un rôle avec un profil d'autorisation d'administrateur principal ou vous connecter en tant que root.
Tableau 2–1 Assistant d'ajout de rôles administratifs : boîtes de dialogue et champs
boîtes 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 |
******** |
|
Confirmation du 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 d'entrer 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. Ils doivent avoir la même portée. |
|
Supprimer |
Permet de supprimer les utilisateurs affectés à ce rôle. |
Démarrez l'outil Rôles administratifs.
Exécutez l'outil Rôles administratifs, démarrez la console de gestion Solaris, comme décrit dans la section How to Assume a Role in the Solaris Management Console du System Administration Guide: Security Services. Des services de sécurité: 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 récapitule les boîtes de dialogue.
vous devez placer ce profil en première position 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 au 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 |
Connectez-vous en tant que superutilisateur ou endossez un rôle permettant de créer d'autres rôles.
Sélectionnez une méthode pour créer un rôle :
Si vous créez un rôle local, utilisez la commande roleadd(1M) pour définir le nouveau rôle et ses attributs.
Si vous souhaitez créer un rôle local, vous pouvez également é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.
Si vous souhaitez créer 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 |
La séquence suivante illustre la création d'un rôle avec 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 qu'utilisateur root ou endosser un rôle qui détient un profil d'autorisations de l'administrateur principal.
Démarrez l'outil Comptes utilisateurs.
Pour exécuter l'outil Comptes utilisateur, vous devez démarrer la console de gestion Solaris, comme décrit dans la section How to Assume a Role in the Solaris Management Console du System Administration Guide: Security Services du document 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 endossez un rôle qui peut 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.