2 votos

Activación del inicio de sesión automático a través de un terminal

Tengo un MacBook con MacOS Sierra versión 10.12.5. Me gustaría saber la configuración de la línea de comandos para cambiar a UNCHECK la opción "Desactivar el inicio de sesión automático" en "Seguridad y privacidad". Puedo hacer esto utilizando la interfaz de usuario. Sin embargo, ya que tengo que rehacer esto repetidamente, estoy tratando de hacerlo usando un script.


Editar: Este es un MacBook de propiedad corporativa. Si quiero hacer esto, tengo que hacerlo cada vez que reinicio porque esta configuración se restablece al reiniciar. Esto también puede ser la razón por la que mi intento mencionado a continuación no funcionó. Sin embargo, puedo hacer esto manualmente, por lo que la configuración no es tan restrictiva, así que supongo que podría ser capaz de hacer esto en la línea de comandos.


enter image description here

He probado el proceso mencionado en Editar las preferencias del sistema a través de la terminal - pero la única diferencia que obtengo es en com.apple.loginwindow.plist donde difiere en el LoginwindowText . No creo que este sea el escenario.

¿Puede alguien decirme cuál es la configuración de la línea de comandos para desmarcar esta casilla?


Editar: En respuesta a la sugerencia de Mark, he probado lo siguiente:

try
    set thePW to "mypassword"

    tell application "System Events"
        tell application "System Preferences"
            activate
        end tell
        tell process "System Preferences"
            activate
            delay 1
            click menu item "Security & Privacy" of menu "View" of menu bar 1
            delay 3
            if title of button 1 of window 1 is "Click the lock to make changes." then
                click button 1 of window 1
                delay 2
                keystroke thePW
                keystroke return
            end if
            get properties
            --set properties to {automatic login:true}
        end tell
    end tell
on error errMsg
    display dialog errMsg
end try

Este código inicia "Seguridad y Privacidad" y pone mi contraseña para ingresar. Desafortunadamente, el get properties no me muestra nada sobre automatic login . Obtengo el siguiente resultado:

{tiene terminología de scripting:true, bundle identificador: "com.apple.systempreferences", archivo:alias "Macintosh HD:Aplicaciones:Preferencias del sistema.app:" de la aplicación "Sistema Events", tipo de creador: "sprf", subrole:missing value, entire contenido:{}, seleccionado:valor ausente, archivo de aplicación:alias "Macintosh HD:Aplicaciones:Preferencias del sistema.app:" de la aplicación "Eventos del sistema Eventos del sistema", orientación:valor ausente, rol: "AXApplication", acepta eventos de alto nivel de eventos:true, tipo de archivo: "APPL", valor:missing value posición:valor ausente, id:28015286, nombre mostrado: "Sistema Preferencias", nombre: "Preferencias del sistema", clase:proceso de aplicación, background only:false, frontmost:true, size:valor que falta, visible:true, Classic:false, espacio de partición utilizado:0, rol descripción: "aplicación", valor máximo:valor ausente, arquitectura: "x86_64", nombre corto: "Preferencias del sistema", enfocado:valor que falta, valor mínimo:valor que falta, ayuda:valor que falta valor, título: "Preferencias del sistema", acepta eventos remotos:false, tamaño total tamaño de la partición:0, descripción: "aplicación", accesibilidad descripción:valor que falta, habilitado:valor que falta, id unix:57066}

En el código mencionado anteriormente he comentado el set properties to {automatic login:true} línea. Si la habilito me sale el error:

error "System Events" tiene un error: No se puede convertir {automatic login: true} en tipo de propiedades del proceso". número -1700 de {inicio de sesión automático: true}

Le agradecería cualquier ayuda.


1voto

Seanbobe Puntos 11

Yo sí no recomienda hacer esto, ya que aumenta el riesgo de seguridad, pero para responder a la pregunta, véase más abajo.

No tengo la misma versión de MacOS por lo que no pude probar, pero puedes intentar crear un AppleScript que lo haga por ti.

Cree un AppleScript para desactivar la lógica automática y guárdelo en ~/bin/disable-automatic-login.osa

#!/usr/bin/osascript
-- AppleScript to set Security settings "Disable automatic login" unchecked

tell application "System Events"
    tell security preferences
        set properties to { automatic login: true }
    end tell
end tell

Asegúrese de activar la ejecución chmod +x ~/bin/disable-automatic-login.osa

Añade ~/bin a la ruta y ejecuta $ disable-automatic-login.osa para desactivar el inicio de sesión automático.

Solución de problemas

La documentación está desactualizada, por lo que las propiedades pueden ser incorrectas, pero la idea es la misma. Puedes descubrir las propiedades en el script Editor.app ejecutando lo siguiente en la app:

tell application "System Events"
    tell security preferences
        get properties
    end tell
end tell

y cambiar el script con las propiedades correctas.

Extra: Lanzamiento automático al iniciar sesión con launchd

Ver http://developernotes.com/archive/2011/04/06/169.aspx

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X