🔒 Registro cerrado · Apertura oficial próximamente · Acceso exclusivo para alumnos activos
Iniciar SesiónEntitlements y capacidades: lo que Apple le deja hacer a la app
4 tareas · 45 min · Principiante
Un entitlement es un permiso de plataforma sellado en la firma de la app: puede recibir notificaciones push, compartir llavero con otras apps de su equipo, asociarse a dominios web o, en las compilaciones de desarrollo, dejar que un depurador se le adjunte. No son los permisos que el usuario concede en pantalla; son los que el sistema otorga según la firma y el perfil. En esta sala se lee la firma de Quetzal Cliente y la de su extensión de notificaciones, y se separa lo que la firma lleva de lo que el perfil solo permitía.
Objetivo de la sala
Un entitlement es un permiso de plataforma sellado en la firma de la app: puede recibir notificaciones push, compartir llavero con otras apps de su equipo, asociarse a dominios web o, en las compilaciones de desarrollo, dejar que un depurador se le adjunte. No son los permisos que el usuario concede en pantalla; son los que el sistema otorga según la firma y el perfil. En esta sala se lee la firma de Quetzal Cliente y la de su extensión de notificaciones, y se separa lo que la firma lleva de lo que el perfil solo permitía.Hay dos documentos y se confunden con facilidad. El perfil de aprovisionamiento es una lista blanca: enumera los entitlements que el equipo de desarrollo tiene permitido usar con esa app. Los entitlements de la firma son los que la app realmente lleva sellados. Un entitlement solo es efectivo si está en la firma, y la firma solo puede llevar los que el perfil permite.
Por eso la revisión mira la firma, no el perfil. Que el perfil permita compartir llavero no significa que la app lo haga; que la firma lleve una clave sí significa que la app la tiene. Y la diferencia entre ambos puede ser un hallazgo en sí misma, porque una capacidad habilitada que nadie usa es superficie que sobra.
Responde para continuar
Para saber qué entitlements tiene realmente una app, ¿qué se lee y por qué?
Ver pista de ayuda
El perfil es una lista de lo permitido; la firma, de lo que la app lleva.
Existe un entitlement booleano que autoriza a un depurador a adjuntarse al proceso de la app. Las compilaciones de desarrollo lo llevan en verdadero, porque el equipo necesita depurar. Una compilación que sale a manos de otras personas debe llevarlo en falso o no llevarlo, porque en verdadero deja que el proceso se inspeccione desde fuera.
La ficha de la compilación 3.8.1 dice que es una configuración de publicación enviada por canal ad hoc a clientes piloto. Con eso en mente, revisa los entitlements de la firma de la app y de la extensión, y localiza el valor que no corresponde a ese canal.
Responde para continuar
Escribe el nombre del entitlement que está en verdadero en la app y que no corresponde a un canal de distribución.
Ver pista de ayuda
Compara la app con su extensión: una de las dos lleva en verdadero una clave que la otra tiene en falso.
Para recibir notificaciones push, la app lleva un entitlement que indica con qué entorno del servicio de notificaciones de Apple trabaja. Tiene dos valores posibles, uno para el entorno de pruebas y otro para el de producción. Una compilación que sale a clientes de verdad con el valor de pruebas recibe avisos por un canal distinto del que usa el servidor de producción, y el equipo suele notarlo porque los avisos no llegan.
En términos de seguridad es un descuido de configuración más que una brecha, pero delata un proceso de compilación que no distingue entornos, como el archivo de pruebas de la sala anterior. Lee la firma de la app y anota con qué valor salió esta compilación.
Responde para continuar
Escribe el valor del entitlement del entorno de notificaciones con el que salió esta compilación.
Ver pista de ayuda
Es el entitlement cuyo nombre empieza por aps.
El entitlement de grupos de acceso al llavero define qué elementos del llavero puede leer una app. Por defecto una app solo ve los suyos; si dos apps o una app y su extensión del mismo equipo llevan el mismo grupo, comparten esos elementos. Cada grupo empieza por el identificador del equipo, así que dos apps de equipos distintos no pueden compartirlo.
Compartir tiene un precio: cualquier pieza que lleve ese grupo puede leer lo que contenga, de modo que el componente más débil determina la protección de todo el grupo. Por eso se revisa quién lo comparte y para qué. Compara los grupos de la app y los de su extensión de notificaciones.
Responde para continuar
Escribe el grupo de acceso al llavero que tienen en común la app y su extensión de notificaciones.
Ver pista de ayuda
La app lleva dos grupos de llavero y la extensión solo uno. Fíjate en cuál aparece en los dos archivos.
Whoami-Labs Pro
Whoami-Labs Pro utiliza cookies
Utilizamos cookies y almacenamiento local para el funcionamiento del sitio, seguridad de sesión y, si lo autorizas, analítica y marketing. Puedes aceptar, rechazar o personalizar. Política de Privacidad
Preferencias
Configuraciones de cookies
Elige qué categorías permitir. Las esenciales siempre están activas. Consulta la Política de Privacidad.
Esenciales
Siempre activas · sesión, CSRF, tema y esta preferencia
Necesarias para iniciar sesión, proteger formularios (CSRF) y recordar tu elección de cookies y tema. Sin ellas la plataforma no funciona de forma segura.
Analíticos
Hoy no activos en la plataforma; listos para cuando se conecten
Nos ayudan a entender uso de cursos y páginas. Si los activas, se usarán cuando conectemos analítica; hasta entonces no se carga ningún tracker.
Marketing
Hoy no activos; campañas futuras solo con tu permiso
Comunicaciones o campañas. No activos hoy en la plataforma; quedarán listos si los conectamos y solo si los permites.