Ordlista/Processer du kommer att se
tccd
Andra namn: integritetsbehörigheter
Kort svar
tccd är processen i macOS som hanterar integritetsbehörigheter: vilka appar som får använda kameran, mikrofonen, skärminspelning, dina filer och mappar, kontakter, Full skivtillgång och Hjälpmedel. TCC står för Transparency, Consent and Control (öppenhet, samtycke och kontroll), systemet bakom varje fråga om att en app ”vill få åtkomst”.
Varje gång en app sträcker sig efter något skyddat frågar macOS tccd om det är tillåtet. tccd sparar svaren i en databas och visar frågan om behörighet när det inte finns något svar än. Det du slår på och av i Systeminställningar → Integritet och säkerhet är tccd:s databas.
Det finns två instanser: en för ditt eget konto och en för systemet. Båda är normalt overksamma och kostar nästan ingenting.
På den här sidan
Varför tccd använder så mycket CPU
En app ber om en behörighet om och om igen, ofta för att den har nekats och fortsätter att försöka, eller för att den har uppdaterats och dess signatur inte längre stämmer med det tccd godkände. Behörigheterna för skärminspelning och Hjälpmedel är de vanliga.
Mer sällan är behörighetsdatabasen i dåligt skick efter en migrering eller en avbruten uppdatering, och tccd misslyckas hela tiden med att läsa den.
Så åtgärdar du det
Öppna Systeminställningar → Integritet och säkerhet, leta upp behörigheten appen behöver och stäng av och slå på den igen, eller ta bort appen från listan med minusknappen och låt den fråga igen.
För att återställa en behörighet för alla appar har Terminal tccutil reset följt av tjänstens namn, till exempel tccutil reset ScreenCapture. Apparna frågar igen nästa gång de behöver den.
Så ser du vilken app som hela tiden frågar tccd
När tccd är upptagen är den användbara frågan vem som frågar och om vad. Dess egen logg säger båda.
- Öppna Aktivitetskontroll, välj Innehåll → Alla processer och skriv
tccdi sökfältet. Kolumnen Användare visar root för systeminstansen och ditt namn för din. Notera vilken som använder processorn. - Öppna Terminal och kör
log stream --predicate 'process == "tccd" AND eventMessage CONTAINS "AUTHREQ"'. Tryck på kontroll-C för att sluta. - Läs raderna som upprepas.
service=anger behörigheten, till exempelkTCCServiceScreenCapture, ochidentifier=anger appen, till exempelcom.example.app. - Titta på
authValue=i resultatraderna.0betyder nekad och2betyder tillåten. En app som får0om och om igen är loopen. - Återställ just den behörigheten för just den appen. Delen av tjänstnamnet efter
kTCCServiceär det somtccutilförväntar sig, såtccutil reset ScreenCapture com.example.apprensar svaret för bara den appen.tccutil reset All com.example.apprensar alla behörigheter för den. - Öppna appen igen och svara på dess fråga, eller ge behörigheten i Systeminställningar → Integritet och säkerhet.
Normal användning av tccd jämfört med ett problem
Normalt: nära noll, med en liten topp varje gång en app ber om något skyddat. Appar frågar ofta, men de flesta svar kommer från databasen på ett ögonblick.
Värt att undersöka: tccd ligger kvar i processorlistan i flera minuter i sträck, eller en behörighet du har gett frågar igen hela tiden. De vanliga orsakerna:
- En app som har uppdaterats eller signerats om, så att tccd inte längre ser den som appen du godkände.
- En app som du har nekat men som inte slutar fråga.
- En behörighetsdatabas som inte flyttades över ordentligt vid en migrering.
Varför en behörighet du har gett inte fungerar
Vissa behörigheter börjar gälla först när appen startar. Skärminspelning och Full skivtillgång är de vanliga: när du slår på dem erbjuder macOS att avsluta och öppna appen igen. Om du väljer Senare fortsätter appen att köras som om den inte hade någon åtkomst tills du avslutar den själv.
Om reglaget är på och appen ändå inte kan använda funktionen efter att den har startats om, stänger du av reglaget, tar bort appen från listan med minusknappen och lägger till den igen. Det ersätter den gamla posten i tccd:s databas med en som stämmer med appen som den är nu.
Frågor som folk ställer
Vad är tccd på Mac?
Processen i macOS som hanterar integritetsbehörigheter, till exempel kamera, mikrofon, skärminspelning och filåtkomst. Den visar frågorna om behörighet och kommer ihåg dina svar.
Varför använder tccd mycket CPU?
Oftast ber en app om en behörighet gång på gång, ofta efter att en uppdatering har ändrat dess signatur. Om du ger behörigheten på nytt under Integritet och säkerhet, eller återställer den med tccutil, bryts loopen.
Är det säkert att återställa integritetsbehörigheter med tccutil?
Ja. Det rensar bara de sparade svaren för den behörigheten, så att apparna frågar igen. Inget annat tas bort, men du behöver godkänna de appar som behöver den på nytt.
Kan jag stänga av tccd?
Nej. Den är en del av macOS och skyddas av Systemintegritetsskydd, och utan den skulle ingen app kunna få eller nekas åtkomst till din kamera, mikrofon eller dina filer. Om du vill bli av med en fråga svarar du på den eller ändrar appens behörighet i Systeminställningar → Integritet och säkerhet.
Var finns TCC-databasen på Mac?
Dina egna behörigheter finns i ~/Library/Application Support/com.apple.TCC/TCC.db, och de som gäller hela systemet finns i samma sökväg under /Library. macOS skyddar båda filerna, så ändra behörigheter i Systeminställningar eller med tccutil i stället för att redigera dem.
Relaterat
Letar du efter något bättre än Aktivitetskontroll? Läs om de bästa alternativen till Aktivitetskontroll för Mac, eller bläddra bland alla begrepp i ordlistan.