Faço uso extensivo do Apple Events para controlar uma ampla variedade de aplicativos em minha máquina. Os novos prompts de segurança introduzidos no Mojave são paralisantes .
Nas versões anteriores do macOS, uma vez que um aplicativo recebia permissão para "controlar seu computador", era possível enviar eventos da Apple para qualquer outro aplicativo em sua máquina. No Mojave, essa permissão deve ser concedida manualmente uma vez para cada aplicativo que está sendo controlado.
Depois que um usuário concede acesso, sua seleção é armazenada em um dos dois bancos de dados sqlite:
~/Library/Application Support/com.apple.TCC/TCC.db
/Library/Application Support/com.apple.TCC/TCC.db
- Observe que o nº 2 é visível apenas para o usuário root.
- Observe que a proteção de integridade do sistema está desativada.
Seria possível editar esses bancos de dados sqlite diretamente para conceder permissões automaticamente e ignorar esses prompts de segurança?
fonte
tell app "Finder" to open every application file in the entire contents of (path to applications folder) as alias list
. Entãorepeat with A in the result
...ignoring application responses
...quit the application named A
...end ignoring
...end repeat
. Vai ser doloroso, mas vai ser como arrancar uma banda.Respostas:
O acesso direto ao banco de dados TCC.db não é mais suportado pela Apple, mesmo que você desative o SIP , por causa de sua política de proteger os usuários de grandes empresas que gostam de rastrear tudo o que você faz online e também costumavam fazer esse desvio furtivo sem perguntar permissão para os usuários. No entanto, mesmo no Mojave, há uma maneira de contornar isso, mas com um problema: isso só funciona se um determinado computador estiver inscrito em um programa MDM . Para saber mais sobre o programa MDM, clique aqui .
Para contornar isso em vários computadores, você pode usar o script python
tccprofile.py
disponível no GitHub .Uma discussão aprofundada sobre o que você pode ou não fazer pode ser encontrada aqui .
Até onde eu sei, esta é a única maneira de ignorar a necessidade de solicitar permissão do usuário a partir do Mojave.
fonte
Encontrei isso para excluir uma entrada.
fonte
Error: unable to open database "/Library/Application Support/com.apple.TCC/TCC.db": unable to open database file
e se eu tentarls
o diretório como root, recebols: : Operation not permitted
.TCC.db
na Catalina? Eu tenho o mesmo problema também, não posso nem fazerls
nocom.apple.TCC
diretóriosudo tccutil --list
( github.com/jacobsalmela/tccutil )O SIP não suporta o diretório Library. Portanto, isso significa que você ainda pode gravar no arquivo TCC.db através do terminal com alguns comandos.
Aqui está o link: Sobre o SIP
fonte