Glosario
Definiciones en lenguaje claro de los términos de TCC usados en el blog y el parser.
- Automatización mediante Apple Events
- El servicio TCC kTCCServiceAppleEvents, que permite a una app enviar órdenes a otra, como Terminal controlando Finder o System Events.
- auth_reason
- Columna de TCC.db (Big Sur y posteriores) con el motivo de una decisión: consentimiento del usuario, sistema o política MDM; valores de la comunidad.
- auth_value
- La columna de TCC.db (Big Sur y posteriores) que contiene la decisión de una fila: 0 denegado, 1 desconocido, 2 permitido, 3 limitado.
- client_type
- La columna de TCC.db que indica cómo se identifica al cliente: 0 para un bundle ID como com.apple.Terminal, 1 para la ruta absoluta de un binario.
- csreq (blob de requisito de código)
- La columna de TCC.db que contiene un requisito de código compilado (número mágico 0xFADE0C00) que un programa debe cumplir para que la fila se le aplique.
- Requisito designado
- El requisito de código que identifica a un programa firmado, mostrado por codesign -d -r-; compárelo con el csreq almacenado en TCC.db.
- Acceso total al disco (Full Disk Access)
- El permiso TCC kTCCServiceSystemPolicyAllFiles, que permite a un programa leer datos protegidos del usuario: Mail, Mensajes, Safari y las bases de datos TCC.
- PPPC y MDMOverrides.plist
- Los perfiles PPPC permiten al MDM preaprobar servicios TCC; las concesiones se reflejan en MDMOverrides.plist, junto al TCC.db del sistema.
- WAL de SQLite (TCC.db-wal)
- El write-ahead log junto a TCC.db que contiene los cambios recientes y, a menudo, copias anteriores de páginas con filas de permisos eliminadas o modificadas.
- System Integrity Protection (SIP)
- Protección de macOS que impide modificar ubicaciones del sistema, como el TCC.db del sistema, incluso a root; no impide leerlo con acceso total al disco.
- TCC.db
- Las bases SQLite donde macOS guarda los permisos de privacidad: una del sistema y otra por usuario, con una tabla access de cliente, servicio y decisión.
- Servicio TCC (kTCCService)
- El identificador de la columna service de TCC.db que nombra el recurso protegido, como kTCCServiceCamera, kTCCServiceAccessibility o kTCCServiceAppleEvents.
- TCC (Transparency, Consent and Control)
- El framework de macOS que decide qué programas pueden usar recursos sensibles: cámara, pantalla, entrada, carpetas protegidas y otras apps.
- tccd
- El daemon de macOS que evalúa las solicitudes de permisos TCC, pide el consentimiento y escribe las decisiones en los TCC.db del sistema y de cada usuario.
- tccutil
- La herramienta de línea de comandos de macOS que restablece decisiones TCC y borra filas de TCC.db para un servicio y, opcionalmente, un bundle ID.