Objetivo
Para solicitar la contraseña de root al cambiar el fondo de pantalla en mi sistema cuando inicie sesión como yo. Comportamiento similar a la edición de la configuración de seguridad en Preferences
, donde se requiere una contraseña para desbloquear la página. O en Keychain
al ver una contraseña.
Soluciones obsoletas
-
com.apple.desktop.plist
ya no existe . El 99% de las respuestas simplemente vuelve a publicar que la protección de este archivo resolverá mi problema. Esta solución parece haber estado desactualizada desde10.9.5 Mavericks
. Actualmente estoy en10.11.6 El Capitan
FYI. - Las preferencias no ofrecen protecciones al panel
Desktop & Screensaver
. No puedes evitar que alguien cambie el fondo de pantalla allí. -
desktoppicture.db
en~/Library/Application Support/Dock
es el supuesto punto de interés para proteger fondos de pantalla, aunque parece bastante inútil detener los cambios, incluso cuando se configura con protecciones de solo lectura y es propiedad de la raíz. - El enlace duro
/System/Library/CoreServices/DefaultDesktop.jpg
no se corresponde con el fondo de pantalla actual, solo el predeterminado. - Nadie parece tener la menor idea de dónde se encuentra el fondo de pantalla que se muestra en el enlace o el punto de entrada del archivo actualmente .
Intentos
El bloqueo del fondo de pantalla requiere que detenga a los usuarios de:
- Usar
Use Image As Desktop Picture
haciendo clic con el botón derecho en las imágenes en Safari. - Usar
Services->Set Desktop Picture
en el Finder para cambiar el fondo. - Usar
Preferences->Desktop & Screensaver
para cambiar el fondo.
Logré 1 estableciendo ~/Library/Safari/Safari Desktop Picture
en solo lectura y bloqueándolo. Esto evita que cualquier imagen de Safari se configure como imagen de escritorio.
Eso me deja con el bloqueo de las preferencias y la eliminación de la opción para configurar las imágenes del escritorio mediante 2 o el bloqueo de cualquier punto que apunte a la imagen del escritorio actual para que no se modifique sin una contraseña. Bueno, debido a que no puede proteger el panel Desktop & Screensaver
en Preferences
, esa opción sale por la ventana.
Eso me deja con una sola solución más. Encontrar cualquier enlace físico o archivo contiene la copia o el puntero a la imagen del escritorio actual y protegerlo. Sin embargo, el problema es que simplemente no puedo averiguar dónde está.
Notas
-
Es posible que tenga que deshabilitar la "Protección de integridad del sistema" de Apple para ajustar los permisos en algunos archivos (por ejemplo,
desktoppicture.db
). Eso requiere iniciar en modo de recuperación y deshabilitarlo concsrutil disable
. -
Después de deshabilitar la protección de integridad del sistema, encontré que todavía no podía cambiar algunos archivos. Inicié el modo de usuario único y utilicé
fsck
seguido demount -uw /
para superar un errorread only
al ajustar los permisos. Usarchflags nouchg <file>
antes dechmod 400 <file>
me permitió ajustar finalmente los permisos. Aunque debo decir que también pude ajustar los permisos en el uso normal siempre que utilicéchflags nouchg <file>
en mi objetivo antes de intentar ajustar los permisos. Así que el modo de usuario único podría no haber sido necesario.
Resumen / tl; dr
El archivo controla el papel tapiz del escritorio que se muestra actualmente en macOS
, y los pasos que se deben seguir para requerir la contraseña de root para ajustar el papel tapiz.