Seguridad del iPad compartido en iPadOS
El modo de iPad compartido es un modo multiusuario que se utiliza en las implantaciones del iPad. Permite a los usuarios compartir un iPad manteniendo los documentos y los datos de cada usuario separados. Cada usuario obtiene su propia ubicación de almacenamiento reservada y privada, que se implementa como un volumen APFS (sistema de archivos de Apple) protegido por la credencial del usuario. Los iPad compartidos requieren el uso de un ID de Apple gestionado que sea propiedad de la organización y haya sido emitido por la misma.
Con los iPad compartidos, un usuario puede iniciar sesión en cualquier dispositivo que sea propiedad de la organización y que esté configurado para que lo puedan utilizar varios usuarios. Los datos de los usuarios se separan en directorios independientes, cada uno de los cuales está en su propio dominio de protección de datos y protegido mediante permisos UNIX y aislamiento. En iPadOS 13.4 o versiones posteriores, los usuarios también pueden iniciar sesiones temporales. Cuando el usuario cierra una sesión temporal, su volumen APFS se elimina y el espacio que tenía reservado se devuelve al sistema.
Inicio de sesión en el iPad compartido
Los ID de Apple gestionados, ya sean nativos o federados, se admiten al iniciar sesión en el iPad compartido. Al usar una cuenta federada por primera vez, se redirige al usuario al portal de inicio de sesión del proveedor de identidad (IdP, por sus siglas en inglés). Después de haberse autenticado, se emite un identificador de acceso de corta duración para respaldar los ID de Apple gestionados (y el proceso de inicio de sesión avanza de forma similar al proceso de inicio de sesión nativo de los ID de Apple gestionados). Después de haber iniciado sesión, el asistente de configuración del iPad compartido pide al usuario que establezca un código (credencial) que se usa para proteger los datos locales del dispositivo y para autenticarse en la pantalla de inicio de sesión en el futuro. Al igual que un dispositivo con un único usuario, en el que el usuario inicia sesión una vez en su ID de Apple gestionado con su cuenta federada para luego desbloquear el dispositivo con su código, en el iPad compartido el usuario inicia sesión una vez con su cuenta federada y, a partir de ese momento, usa el código que se ha establecido.
Cuando un usuario inicia sesión sin la autenticación federada, el ID de Apple gestionado se autentica con el servicio de identidad (IDS) de Apple mediante el protocolo SRP. Si la autenticación se realiza correctamente, se otorga un identificador de acceso de corta duración específico para el dispositivo. En el caso de que el usuario haya utilizado el dispositivo con anterioridad, ya dispondrá de una cuenta de usuario local que se desbloqueará con la misma credencial.
Si, por el contrario, el usuario no ha usado el dispositivo anteriormente o está usando la función de sesión temporal, el iPad compartido proporciona un nuevo ID de usuario UNIX, un volumen APFS para almacenar los datos personales del usuario y un llavero local. Puesto que se debe asignar (reservar) un espacio de almacenamiento para el usuario al crear el volumen APFS, puede que no se disponga del espacio suficiente para crear un volumen nuevo. En este caso, el sistema identifica a un usuario ya existente cuyos datos ya se hayan sincronizado en la nube y lo desaloja del dispositivo para que el nuevo usuario pueda iniciar sesión. En el caso improbable de que todos los usuarios existentes aún no hayan terminado de subir sus datos a la nube, el nuevo usuario no podrá iniciar sesión. Para iniciar sesión, el nuevo usuario tendrá que esperar a que se complete la sincronización de uno de los otros usuarios o solicitar a un administrador que fuerce la eliminación de una cuenta de usuario existente, con los riesgos de pérdida de datos que eso implicaría.
Si el dispositivo no está conectado a internet (por ejemplo, si el usuario no tiene ningún punto de acceso a una red wifi), solo podrá autenticarse con la cuenta local durante un número limitado de días. En esa situación, solo podrán iniciar sesión los usuarios que dispongan de cuentas locales que ya existían anteriormente o que inicien sesiones temporales. Una vez transcurrido el plazo, los usuarios deben autenticarse en línea, incluso si ya existe una cuenta local.
Una vez desbloqueada o creada la cuenta local del usuario, si se ha autenticado de forma remota, el identificador de corta duración emitido por los servidores de Apple se convertirá en un identificador de iCloud que permitirá iniciar sesión en iCloud. A continuación, los ajustes del usuario se restaurarán y sus documentos y datos se sincronizarán desde iCloud.
Mientras la sesión del usuario esté activa y el dispositivo esté conectado, los documentos y datos que se creen o modifiquen se almacenarán en iCloud. Además, un mecanismo de sincronización en segundo plano ayuda a garantizar el envío de los cambios a iCloud, o a otros servicios web que utilicen sesiones NSURLSession en segundo plano, una vez que el usuario ha cerrado sesión. Una vez completada la sincronización en segundo plano para ese usuario, el volumen APFS del usuario se desmontará y no se podrá montar de nuevo sin que el usuario vuelva a iniciar sesión.
En las sesiones temporales no se sincronizan los datos con iCloud y, aunque en las sesiones temporales se puede acceder a servicios de sincronización de otros proveedores, como Box o Google Drive, no hay posibilidad de seguir sincronizando los datos una vez terminada la sesión temporal.
Cierre de sesión en el iPad compartido
Cuando un usuario cierra la sesión en el iPad compartido, el repositorio de claves de dicho usuario se bloquea inmediatamente y todas las apps se cierran. En el caso de que otro usuario vaya a iniciar sesión, para agilizar el proceso, iPadOS pospone temporalmente algunas acciones ordinarias de cierre de sesión y muestra una ventana de inicio de sesión al nuevo usuario. Si un usuario inicia sesión durante este tiempo (aproximadamente 30 segundos), el iPad compartido realiza la limpieza diferida como parte del proceso de inicio de sesión de la cuenta del nuevo usuario. Sin embargo, si el iPad compartido permanece inactivo, se desencadenará la limpieza diferida. Durante la fase de limpieza, la ventana de inicio de sesión se reinicia como si se hubiera producido otro cierre de sesión.
Cuando termina una sesión temporal, el iPad compartido ejecuta la secuencia completa de cierre de sesión y elimina el volumen APFS de la sesión temporal inmediatamente.