If you’re having issues with the privacy permissions system in macOS Catalina or newer versions, such as being unable to change the settings, there are several steps you can take to remedy the situation.
These settings are currently stored in a SQLite database located at
tccutil is a command line tool you can use to reset system privacy permissions for macOS apps. There’s some granularity here. You can reset individual permissions or all permissions, and you can make this change for individual apps or all apps.
Individual apps are identified through their bundle identifier. To get an app’s bundle ID from its name, you can use either of the following commands:
$ lsappinfo info -only bundleid "Google Chrome" $ osascript -e 'id of app "Google Chrome"'
A list of individual permissions is not documented anywhere as far as I know, but you can currently get a rough idea by checking for certain strings in the
$ strings /System/Library/PrivateFrameworks/TCC.framework/TCC | grep ^kTCCService | fgrep -v ' ' | sed -e s/kTCCService// | sort
At the time of writing this post, the list contained the following entries:
Accessibility AddressBook All AppleEvents Calendar Camera ContactsFull ContactsLimited DeveloperTool Facebook FileProviderDomain FileProviderPresence LinkedIn ListenEvent Liverpool Location MediaLibrary Microphone Motion Photos PhotosAdd PostEvent Reminders ScreenCapture ShareKit SinaWeibo Siri SpeechRecognition SystemPolicyAllFiles SystemPolicyDesktopFolder SystemPolicyDeveloperFiles SystemPolicyDocumentsFolder SystemPolicyDownloadsFolder SystemPolicyNetworkVolumes SystemPolicyRemovableVolumes SystemPolicySysAdminFiles TencentWeibo Twitter Ubiquity Willow
To reset the
Camera permission for Google Chrome, you would use:
$ sudo tccutil reset Camera com.google.Chrome
To reset the
Camera permission for all apps, you would use:
$ sudo tccutil reset Camera
To reset the all permissions for Google Chrome, you would use:
$ sudo tccutil reset All com.google.Chrome
To reset the all permissions for all apps, you would use:
$ sudo tccutil reset All
If the above changes do not take effect immediately, you might have to reset your Mac’s PRAM. Instructions to do so can be found here.
Delete TCC database
If the changes still do not take effect, you can delete the entire permission database. This requires booting into recovery mode as the file cannot be deleted while the OS is running. Do so at your own risk.
The steps are:
- Boot into reovery mode
Disk Utilityto mount your system and data partitions. They are listed on the left side under
Internaland are named
Macintosh HD - Databy default.
Terminalthrough the Utilities menu
- Delete database:
$ rm /Volumes/Macintosh\ HD/Library/Application\ Support/com.apple.TCC/TCC.db
Note: If renamed your partition from the default name, the path will differ.