PAM signifie Pluggable Authentification Modules. Etant donné
que PAM a la priorité en termes d'enregistrement de droits, la modification
des droits avec PAM l'emporte sur la methode décrite à la sous-section
19.7.2. PAM utilise le fichier
/etc/security/console.perms pour gérer
les droits. La première partie de ce fichier décrit les groupes et
la seconde les droits. Voici un exemple de fichier /etc/security/console.perms:
# /etc/security/console.perms
# # This file determines the permissions that will be given to priviledged # users of the console at login time, and the permissions to which to # revert when the users log out. # format is: # <class>=list of regexps specifying consoles or globs specifying files # file-glob|<class> perm dev-regex|<dev-class> \ # revert-mode revert-owner[.revert-group] # the revert-mode, revert-owner, and revert-group are optional, and default # to 0600, root, and root, respectively. # # For more information: # man 5 console.perms # file classes - these are regular expressions <console>=tty[0-9][0-9]* vc/[0-9][0-9]* :[0-9]\.[0-9] :[0-9] <xconsole>=:[0-9]\.[0-9] :[0-9] # device classes - these are shell-style globs <serial>=/dev/ttyS* <floppy>=/dev/fd[0-1]* \ /dev/floppy/* /mnt/floppy* <sound>=/dev/dsp* /dev/audio* /dev/midi* \ /dev/mixer* /dev/sequencer* \ /dev/sound/* /dev/snd/* /dev/beep \ /dev/admm* \ /dev/adsp* /dev/aload* /dev/amidi* /dev/dmfm* \ /dev/dmmidi* /dev/sndstat <cdrom>=/dev/cdrom* /dev/rdvd /dev/ide/*/*/*/*/cd /dev/scsi/*/*/*/*/cd \ /dev/cdroms/* /dev/cdwriter* /mnt/cdrom* <pilot>=/dev/pilot < jaz>=/mnt/jaz* <zip>=/mnt/pocketzip* /mnt/zip* <ls120>=/dev/ls120 /mnt/ls120* <scanner>=/dev/scanner /dev/usb/scanner* <rio500>=/dev/usb/rio500 <camera>=/mnt/camera* /dev/usb/dc2xx* /dev/usb/mdc800* <memstick>=/mnt/memstick* <flash>=/mnt/flash* <diskonkey>=/mnt/diskonkey* <rem_ide>=/mnt/microdrive* <fb>=/dev/fb /dev/fb[0-9]* \ /dev/fb/* <kbd>=/dev/kbd <joystick>=/dev/js[0-9]* <v4l>=/dev/video* /dev/radio* /dev/winradio* /dev/vtx* /dev/vbi* \ /dev/video/* /dev/vttuner <gpm>=/dev/gpmctl <dri>=/dev/nvidia* /dev/3dfx* <mainboard>=/dev/apm_bios <burner>=/dev/scd* /dev/sg* /dev/pcd* /dev/pg* /dev/cdwriter /dev/scsi/*/*/*/*/generic <usb>=/dev/usb/dabusb* /dev/usb/mdc800* /dev/usb/rio500 /dev/ttyUSB* \ /proc/usb/[0-9][0-9][0-9]/[0-9][0-9][0-9]
# permission definitions
<console> 0600 <kbd> 0600 root
<console> 0600 <usb> 0660 root.usb
<console> 0600 <rio500> 0600
root
|
<cdrom>=/dev/cdrom* /dev/rdvd
/dev/ide/*/*/*/*/cd /dev/scsi/*/*/*/*/cd \
/dev/cdroms/* /dev/cdwriter* /mnt/cdrom* |
<console> 0600 <cdrom> 0660 root.cdrom
|
Le second champ reprend les droits attribuées aux fichiers de périphérique lors d'une connexion réussie. Quand un utilisateur se connecte au système et que les fichiers périphériques appartiennent au propriétaire ou au groupe par défaut, PAM enregistre l'utilisateur connecté comme s'il s'agissait du propriétaire. PAM attribue les droits décrits dans le deuxième champ. Dans ce cas, 0600 est employé: l'utilisateur a le droit d'accès en lecture et en écriture, à l'exclusion de tout autre utilisateur.
Le troisième champ contient le groupe de périphériques auquel les droits sont conférés. En l'occurrence, pour le groupe <cdrom>, tous les fichiers de périphériques relatifs au lecteur de CD-ROMs sont modifiés.
Le quatrième champ définit les droits associés au fichier périphérique après retour à l'état par défaut: si le propriétaire des fichiers de périphérique se déconnecte, PAM modifie alors les droits pour reprendre les droits de l'état par défaut, tels que décrits dans ce quatrième champ.
Le cinquième champ définit la propriété (avec le groupe, le cas échéant) donnée aux attributs du périphérique après le retour dans l'état par défaut: si le propriétaire des fichiers de périphériques se déconnecte, PAM remet le propriétaire précédent correspondant à l'état par défaut tel que décrit dans ce cinquième champ.