Red de conocimiento informático - Aprendizaje de programación - ¿Qué determina los valores de euid y egid?

¿Qué determina los valores de euid y egid?

Cada usuario tiene un uid y un gid, que se registran en /etc/passwd, /etc/group.

Cada archivo tiene un uid, que es el uid del usuario propietario del archivo.

Cada usuario usa su propio uid como su identidad cuando ejecuta el programa. Si el programa tiene el bit de palanca configurado, el programa usa el uid del propietario del programa como su identidad cuando se ejecuta. Si el programa está configurado con el bit de palanca, entonces el programa utilizará el uid del propietario del programa como su identidad. La identidad (uid) del programa cuando se esté ejecutando. >es el euid, lo que significa que el programa se ejecuta como ese usuario (y por lo tanto

tiene los permisos de ese usuario, como leer archivos que le pertenecen).

Por lo tanto, el euid de la persona que ejecuta el programa suele ser el uid de la persona que ejecuta el programa y, a veces,

el uid de la persona propietaria del programa.

Tome el programa passwd como ejemplo. Este programa debe escribir en /etc/passwd y /etc/shadow, pero los usuarios normales

no tienen permiso para escribir en estos archivos. El usuario A ejecuta passwd y el euid del proceso passwd es uidA. Al escribir estos dos archivos, passwd llama a setuid (seteuid?),

Entonces el euid del proceso passwd es uidRoot, y passwd puede escribir estos dos archivos.

Después de escribir ambos archivos, euid cambiará a uidA.

Este proceso implementa el acceso controlado a /etc/passwd y /etc/shadow: los usuarios normales sólo pueden modificar estos archivos de la manera definida por el programa passwd.

No sé si lo dejé claro, pero es posible que haya cometido un error, así que estoy buscando una copia de "Programación avanzada" de Stevens

en entorno UNIX. o un System V System Programming, publicado por O'Reilly.

En el entorno UNIX, hay un libro "Programación del sistema System V" publicado por O'Reilly.

Este libro es bastante bueno en cuanto a los libros en esta área. nuestra propia gente, olvidémoslo.