tccd
又稱:隱私權限
簡短回答
tccd是管理隱私權限的macOS程序:哪些App可以使用相機、麥克風、螢幕錄製、你的檔案和檔案夾、聯絡人、「完整磁碟取用權限」和「輔助使用」。TCC是Transparency, Consent and Control(透明度、同意與控制)的縮寫,每個「想要取用」提示背後都是這套系統。
每當App要使用受保護的項目時,macOS都會詢問tccd是否允許。tccd會把答案存在資料庫中,還沒有答案時就顯示權限提示。你在「系統設定」→「隱私權與安全性」中開啟和關閉的,就是tccd的資料庫。
它有兩個實例:一個服務你自己的帳號,一個服務系統。兩者平時都處於閒置狀態,幾乎不耗資源。
tccd為什麼使用這麼多CPU
某個App正在一再要求權限,通常是因為被拒絕後不斷嘗試,或是更新後它的簽署已和tccd先前核准的不同。最常見的是螢幕錄製和輔助使用權限。
較少見的情況是,在遷移或中斷的更新之後,權限資料庫出了問題,tccd一直讀取失敗。
如何修正
打開「系統設定」→「隱私權與安全性」,找到App需要的權限,把它關閉後再開啟;或用減號按鈕把App從列表中移除,讓它重新要求。
若要為所有App重置某一項權限,可以在「終端機」中使用tccutil reset加上服務名稱,例如tccutil reset ScreenCapture。App下次需要時會再次要求。
如何查看是哪個App一直在詢問tccd
tccd很忙的時候,真正該問的是誰在要求什麼。它自己的記錄會把這兩件事都告訴你。
- 打開活動監視器,選擇「顯示方式」→「所有程序」,然後在搜尋欄位中輸入
tccd。「使用者」欄位中,系統實例顯示為root,你的實例則顯示你的名稱。記下是哪一個在用CPU。 - 打開「終端機」並執行
log stream --predicate 'process == "tccd" AND eventMessage CONTAINS "AUTHREQ"'。按下Control-C即可停止。 - 閱讀一再重複的那幾行。
service=是權限名稱,例如kTCCServiceScreenCapture;identifier=是App名稱,例如com.example.app。 - 看結果那幾行中的
authValue=。0代表拒絕,2代表允許。一次又一次得到0的App,就是那個迴圈。 - 只替那個App重設那一項權限。服務名稱中
kTCCService之後的部分就是tccutil要的參數,所以tccutil reset ScreenCapture com.example.app只會清除該App的這一項答覆。tccutil reset All com.example.app則會清除它的所有權限。 - 再打開一次這個App並回應它的提示,或在「系統設定」→「隱私權與安全性」中給予權限。
tccd的正常用量與異常情況
正常:接近零,每當有App要求受保護的項目時會小小跳動一下。App要求得很頻繁,但大多數答覆都是瞬間從資料庫中取出。
值得檢查:tccd一連好幾分鐘都留在CPU列表中,或你已經給予的權限仍一再詢問。常見原因如下:
- 某個App更新過或重新簽署過,tccd不再把它認作你核准過的那個App。
- 你拒絕過的App仍不停地要求。
- 移轉時權限資料庫沒有完整搬過來。
為什麼已給予的權限沒有作用
有些權限只在App啟動時才會生效,常見的是「螢幕錄製」和「完整磁碟取用權限」:開啟它們時,macOS會提議結束並重新打開App。如果你選擇「稍後」,在你自己結束這個App之前,它會繼續像沒有權限一樣執行。
如果開關已經開啟,重新啟動App後仍無法使用該功能,就把開關關閉,用減號按鈕把App從列表中移除,再重新加入。這樣tccd資料庫中的舊記錄就會換成與這個App目前狀態相符的記錄。
大家常問的問題
Mac上的tccd是什麼?
它是管理隱私權限(例如相機、麥克風、螢幕錄製和檔案取用)的macOS程序。它負責顯示權限提示,並記住你的回答。
tccd的CPU用量為什麼很高?
通常是某個App在反覆要求權限,多半是更新改變了它的簽署。在「隱私權與安全性」中重新授予權限,或用tccutil重置,就能終止這個循環。
用tccutil重置隱私權限安全嗎?
安全。它只會清除該權限已儲存的回答,讓App再次要求。它不會移除其他任何東西,但你需要重新核准需要這項權限的App。
可以停用tccd嗎?
不行。它是macOS的一部分,受「系統完整性保護」保護,少了它,就沒有任何App能被允許或拒絕取用你的相機、麥克風或檔案。要讓提示不再出現,就回應它,或在「系統設定」→「隱私權與安全性」中更改該App的權限。
Mac上的TCC資料庫在哪裡?
你自己的權限在~/Library/Application Support/com.apple.TCC/TCC.db中,系統層級的權限則在/Library底下的同一路徑中。macOS會保護這兩個檔案,所以請在「系統設定」中或用tccutil更改權限,不要直接編輯它們。
相關詞條
想找比活動監視器更好的工具?請參閱Mac上最好用的活動監視器替代方案,或瀏覽詞彙表中的所有詞條。