Ativar / Desativar Prompt de Senha do Protetor de Tela do OS X

1

Estou tentando acelerar a habilitação e a desativação do recurso de segurança / senha no OS X. Especificamente neste caso, o Mountain Lion 10.8.4.

Atualmente tenho um hot corner (além do atalho ctrl + shift + EJECT) definido para iniciar meu protetor de tela no meu Mac. Isso, por sua vez, requer uma senha imediatamente após o protetor de tela ter sido ativado. Eu uso esse recurso ao trabalhar em um ambiente onde desejo proteger meu Mac ativo em uma situação compartilhada.

Estou tentando ativar, a partir do terminal, uma maneira rápida de ativar ou desativar o "Exigir senha X depois que o modo de repouso ou a proteção de tela começar".

Eu tentei

defaults -currentHost write com.apple.screensaver askForPassword -int 0
defaults -currentHost write com.apple.screensaver askForPassword -int 1

que parece atualizar /Users/USER/Library/Preferences/com.apple.screensaver.plist com sucesso.

No entanto, quando atualizar manualmente ou usar o terminal para atualizar

askForPassword

, parece estar sendo ignorado, portanto, nada está mudando funcionalmente.

Eu prefiro fazê-lo no terminal, se possível, mas estou aberto a outras sugestões, se não. Até agora, todos os comandos são executados como não-raiz.

Qualquer ajuda ou orientação sobre o assunto é mais do que bem-vinda

    
por Badger 23.07.2013 / 02:33

2 respostas

0

Você pode killall SystemUIServer ou, se desejar, pode compilar esse código e executá-lo depois de executar o comando defaults . É menos drástico que o comando killall, embora exija que as ferramentas do desenvolvedor e o compilador C sejam instalados.

#include <CoreFoundation/CoreFoundation.h>

int main(int argc, char ** argv) {
  CFMessagePortRef port = CFMessagePortCreateRemote(NULL, CFSTR("com.apple.loginwindow.notify"));
  CFMessagePortSendRequest(port, 500, 0, 0, 0, 0, 0);
  CFRelease(port);
  return 0;
}

(fonte: link )

    
por 23.07.2013 / 03:26
1

Bem, não funcionou comigo também. Eu listei os padrões e descubro a seguir:

$ defaults read com.apple.screensaver
{
    askForPassword = 1;
    askForPasswordDelay = 60;
}

Então, eu tentaria alterar o atraso também:

$ defaults write com.apple.screensaver askForPasswordDelay -int 1

Pode ajudá-lo, mas não funciona na versão do OS X, mesmo matando o SystemUIServer ...

    
por 22.06.2014 / 21:42