Sto provando a fare uno script per bloccare il mio computer quando una chiave USB non è collegata e viceversa, sblocca il mio computer quando è connessa la USB.
Non sono abbastanza sicuro di come fare la seconda parte, dovrei semplicemente rimuovere i requisiti della password per lo sblocco quando la connessione USB è collegata?
property Disconnected : true
property MyShellScript : missing value
on YubiKeyConnected()
try
set MyShellScript to do shell script "ioreg -c IOUSBDevice | grep Yubikey"
on error
set MyShellScript to "Not Connected"
set Disconnected to true
end try
if MyShellScript contains "Yubikey NEO OTP+U2F+CCID@10" then
set Disconnected to false
end if
end YubiKeyConnected
on idle
set currentState to YubiKeyConnected()
if MyShellScript contains "Yubikey NEO OTP+U2F+CCID@ 10" then
else if Disconnected is true then
activate application "ScreenSaverEngine"
end if
return 1
end idle
Aggiornamento: ho trovato questo ma continuo ad avere l'errore "errore" di sicurezza: SecKeychainSearchCopyNext: l'oggetto specificato non è stato trovato nel portachiavi. "numero 44"
tell application "System Events"
if ((get name of every process) contains "ScreenSaverEngine") then
set pw to (do shell script "security find-generic-password -l \"[MyLocalPassword]\" -w")
tell application "ScreenSaverEngine" to quit
delay 0.5
keystroke pw
keystroke return
-- set require password to wake of security preferences to false
end if
end tell