Удалить приложения из безопасности -> Конфиденциальность -> Список контактов

4167
jww

У меня есть несколько приложений, которые хотят получить доступ к моим контактам. Я на самом деле не использую контакты, и я не хочу, чтобы приложения имели право на информацию.

Я снял соответствующий флажок, но я хотел бы удалить приложение из списка:

enter image description here

У меня также есть несколько приложений в Location Services (в том числе одно приложение Wifi stumbler, которое больше не установлено).

Какой список я могу изменить, чтобы удалить приложения из списка?

1

2 ответа на вопрос

2
user495470

The information is stored in ~/Library/Application Support/com.apple.TCC/TCC.db.

$ sqlite3 Library/Application\ Support/com.apple.TCC/TCC.db .dump PRAGMA foreign_keys=OFF; BEGIN TRANSACTION; CREATE TABLE admin (key TEXT PRIMARY KEY NOT NULL, value INTEGER NOT NULL); INSERT INTO "admin" VALUES('version',7); CREATE TABLE access (service TEXT NOT NULL, client TEXT NOT NULL, client_type INTEGER NOT NULL, allowed INTEGER NOT NULL, prompt_count INTEGER NOT NULL, csreq BLOB, CONSTRAINT key PRIMARY KEY (service, client, client_type)); INSERT INTO "access" VALUES('kTCCServiceUbiquity','com.apple.mail',0,1,1,NULL); INSERT INTO "access" VALUES('kTCCServiceUbiquity','com.apple.TextEdit',0,1,1,NULL); INSERT INTO "access" VALUES('kTCCServiceUbiquity','com.apple.ScriptEditor2',0,1,1,NULL); INSERT INTO "access" VALUES('kTCCServiceAddressBook','com.runningwithcrayons.Alfred-2',0,1,0,X'FADE0C00000000CC0000000100000006000000060000000F000000020000001F636F6D2E72756E6E696E6777697468637261796F6E732E416C667265642D3200000000070000000E000000000000000A2A864886F7636406010900000000000000000006000000060000000E000000010000000A2A864886F763640602060000000000000000000E000000000000000A2A864886F7636406010D0000000000000000000B000000000000000A7375626A6563742E4F550000000000010000000A585A5A584539534544340000'); INSERT INTO "access" VALUES('kTCCServiceUbiquity','com.apple.Automator',0,1,1,NULL); INSERT INTO "access" VALUES('kTCCServiceUbiquity','com.apple.Preview',0,1,1,NULL); INSERT INTO "access" VALUES('kTCCServiceUbiquity','com.apple.iWork.Numbers',0,1,1,NULL); INSERT INTO "access" VALUES('kTCCServiceUbiquity','com.apple.inputmethod.Kotoeri',0,1,1,NULL); INSERT INTO "access" VALUES('kTCCServiceAddressBook','com.smileonmymac.textexpander',0,1,0,X'FADE0C00000000CC0000000100000006000000060000000F000000020000001D636F6D2E736D696C656F6E6D796D61632E74657874657870616E646572000000000000070000000E000000000000000A2A864886F7636406010900000000000000000006000000060000000E000000010000000A2A864886F763640602060000000000000000000E000000000000000A2A864886F7636406010D0000000000000000000B000000000000000A7375626A6563742E4F550000000000010000000A37504B4A36473444584C0000'); INSERT INTO "access" VALUES('kTCCServiceUbiquity','com.apple.iWork.Pages',0,1,1,NULL); INSERT INTO "access" VALUES('kTCCServiceUbiquity','com.apple.iMovieApp',0,1,1,NULL); INSERT INTO "access" VALUES('kTCCServiceAddressBook','com.google.Chrome',0,1,0,X'FADE0C00000000700000000100000006000000070000000200000011636F6D2E676F6F676C652E4368726F6D650000000000000200000018636F6D2E676F6F676C652E4368726F6D652E63616E61727900000004000000000000001485CEE8254216185620DDC8851C7A9FC4DFE120EF'); CREATE TABLE access_times (service TEXT NOT NULL, client TEXT NOT NULL, client_type INTEGER NOT NULL, last_used_time INTEGER NOT NULL, CONSTRAINT key PRIMARY KEY (service, client, client_type)); CREATE TABLE access_overrides (service TEXT PRIMARY KEY NOT NULL); $ sqlite3 Library/Application\ Support/com.apple.TCC/TCC.db 'select * from "access" where service=="kTCCServiceAddressBook"' kTCCServiceAddressBook|com.google.Chrome|0|1|0|�� kTCCServiceAddressBook|com.runningwithcrayons.Alfred-2|0|1|0|�� kTCCServiceAddressBook|com.smileonmymac.textexpander|0|1|0|�� 

To clear the list shown in System Preferences, run sqlite3 ~/Library/Application\ Support/com.apple.TCC/TCC.db 'delete from "access" where service=="kTCCServiceAddressBook"'. The changes should be applied immediately.

Хороший, но более простой способ очистить список - запустить `tccutil reset AddressBook`. mklement0 9 лет назад 4
2
user332214

У нас есть скрипты Python, которые будут добавлять и удалять приложения из баз данных TCC во время нашего регулярного цикла обслуживания. Изменения вступают в силу немедленно.

https://github.com/univ-of-utah-marriott-library-apple/tcc_database_manager 

Например, вы можете просто использовать следующий код после его установки:

tcc_database_manager add contacts safari /Longer/Path/To/MyApp.app com.apple.TextEdit