Los atributos de un proceso que intervienen en el mecanismo de protección son:
En realidad, cada proceso contiene dos versiones del identificador de usuario, la denominada versión real (rUID) y la versión efectiva (eUID).
La versión real siempre corresponde al usuario que creó el proceso. La versión efectiva corresponde al usuario bajo el cual se comporta el proceso y es el utilizado en el mecanismo de protección. Ambos identificadores suelen ser iguales, salvo que intervenga el denominado bit SETUID en el fichero ejecutable que está ejecutando el proceso, tal como se describe más adelante en este documento (ver “Los bits SETUID y SETGID en ficheros ejecutables ”).
En este caso, el proceso también contiene una versión real (rGID) y otra efectiva (eGID) del identificador.
La versión real corresponde al grupo primario al que pertenece el usuario que creó el proceso. La versión efectiva corresponde al grupo bajo el cual se comporta el proceso y es el utilizado en el mecanismo de protección. Ambos identificadores suelen ser iguales, salvo que intervenga el denominado bit SETGID en el fichero ejecutable que está ejecutando el proceso, tal como se describe más adelante en este documento (ver “Los bits SETUID y SETGID en ficheros ejecutables ”).
Es la lista formada por los grupos suplementarios del usuario que creó el proceso.
Estos atributos son asignados al proceso en el momento de su creación, y heredados de su proceso padre. Cada usuario conectado a un sistema Unix posee un proceso de atención, el cual puede ser un entorno de ventanas o un intérprete de órdenes (shell). En cualquiera de ambos casos, este proceso es el padre de todos los procesos que el usuario genera. Este proceso shell recibe sus atributos no por herencia, sino en el momento en el que un usuario se acredita al sistema mediante su nombre de usuario y contraseña asociada. Los atributos rUID y rGID se extraen de la tabla de usuarios /etc/passwd. La lista de grupos suplementarios es confeccionada a partir de la tabla de grupos /etc/group. Los atributos eUID y eGID son asignados a los valores respectivos de rUID y rGID. Un mandato interesante al respecto es id, el cual muestra todos estos atibutos.