Remove applications from Security -> Privacy -> Contacts list

1

1

I have a few applications that want access to my contacts. I don't really use contacts, and I don't want applications entitled to the information.

I've unchecked the appropriate box, but I'd like to remove the application from the list:

enter image description here

I've got a couple of applications under Location Services, too (including one Wifi stumbler application that's no longer installed).

What plist do I modify to remove the applications from the list?

jww

Posted 2014-02-02T09:44:27.713

Reputation: 1

Answers

3

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.

Lri

Posted 2014-02-02T09:44:27.713

Reputation: 34 501

5Nice, but an easier way to clear the list is to run tccutil reset AddressBook. – mklement0 – 2014-05-15T13:02:26.740

2

We have python scripts that will applications to be added and removed from the TCC databases during our regular maintenance cycle. Changes take effect immediately.

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

For example, you can simply use the following code once it is installed:

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

user332214

Posted 2014-02-02T09:44:27.713

Reputation: 21