Usar identificadores seguros, de arranque y de propiedad de volúmenes en las implementaciones
Identificador seguro
El sistema de archivos de Apple (APFS) en macOS 10.13 o posterior cambia cómo se generan las claves de encriptación de FileVault. En los volúmenes CoreStorage de las versiones anteriores de macOS, las claves usadas durante el proceso de encriptación de FileVault se creaban cuando un usuario u organización activaban FileVault en un Mac. En los volúmenes APFS de macOS, las claves de encriptación se generan durante la creación de usuarios, durante el establecimiento de la primera contraseña de los usuarios o durante el primer inicio de sesión de un usuario del Mac. Esta implementación de las claves de encriptación, cuándo se generan y cómo se almacenan, forman parte del identificador seguro. Concretamente, un identificador seguro es una versión protegida de una clave de cifrado de claves (KEK) por la contraseña de un usuario.
Cuando se implementa FileVault en APFS, el usuario puede seguir haciendo lo siguiente:
Usar los procesos y herramientas existentes, como una clave personal de recuperación (PRK) que se puede almacenar con una solución de gestión de dispositivos móviles (MDM) para su custodia.
Crear y usar una clave de recuperación institucional (IRK).
Aplicar la activación con retraso de FileVault hasta que un usuario inicie o cierre sesión en el Mac.
A partir de macOS 11, ajustar la contraseña inicial para el primer usuario del Mac hace que se asigne a ese usuario un identificador seguro. En algunos flujos de trabajo, puede que no sea ese el comportamiento deseado ya que, previamente, para proporcionar el primer identificador seguro habría sido necesario que la cuenta de usuario iniciara sesión. Para evitar que esto ocurra, añade ;DisabledTags;SecureToken
al atributo de usuario AuthenticationAuthority
creado mediante programación antes de ajustar la contraseña del usuario, de esta manera:
sudo dscl . -append /Users/<user name> AuthenticationAuthority ";DisabledTags;SecureToken"
Identificador de arranque
En macOS 10.15 o posterior, se utiliza una función llamada identificador de arranque para ayudar a otorgar un identificador seguro tanto a las cuentas de macOS como a la cuenta de administrador opcional creada al inscribir el dispositivo (el “administrador gestionado”). En macOS 11 o posterior, este identificador de arranque puede proporcionar un identificador seguro a cualquier usuario que inicie sesión en un ordenador Mac, incluidas las cuentas de usuario local. El uso de la función de identificador de arranque de macOS 10.15 o posterior requiere:
Supervisión
Compatibilidad con el proveedor de MDM
Supongamos que tu solución MDM es compatible con los identificadores de arranque. En macOS 10.15.4 o posterior, cuando un usuario autorizado por identificador seguro inicia sesión por primera vez, se genera un identificador de arranque que será custodiado por la solución MDM. También se puede generar un identificador de arranque que será custodiado por la solución MDM con la herramienta de línea de comandos profiles
si es necesario.
En macOS 11 o posterior, el identificador de arranque también se puede usar para más cosas que simplemente proporcionar identificadores seguros a las cuentas de usuario. En los ordenadores Mac con chip de Apple, el identificador de arranque, si está disponible, se puede utilizar para autorizar la instalación tanto de extensiones del kernel como de actualizaciones de software si se gestionan mediante MDM. El identificador de arranque también se utiliza para autorizar sin interacción un comando “Borrar contenidos y ajustes” cuando se activa mediante MDM en macOS 12.0.1 o posterior.
Propiedad del volumen
Los ordenadores Mac con chip de Apple introducen el concepto de propiedad de volumen. En un contexto de organización, la propiedad de los volúmenes no está vinculada a la propiedad legal real o a la cadena de custodia del Mac. En su lugar, la propiedad de los volúmenes se puede definir vagamente como el usuario que primero ha solicitado un Mac al configurarlo para su propia utilización, junto con los demás usuarios adicionales autorizados. Debes tener la propiedad del volumen para realizar cambios en la política de seguridad de arranque para una instalación específica de macOS, para autorizar la instalación de actualizaciones de software de macOS, iniciar un comando “Borrar contenido y ajustes” en el Mac y otras tareas. La política de seguridad del arranque define restricciones sobre qué versiones de macOS pueden arrancar, además de si se pueden cargar o gestionar extensiones del kernel de terceros.
El usuario que primero ha solicitado un Mac configurándolo para su uso recibe un identificador seguro en un Mac con chip de Apple y se convierte en el primer propietario del volumen. Cuando hay disponible y se utiliza un identificador de arranque, también se convierte en propietario de volumen y proporciona el estado de propiedad del volumen a otras cuentas adicionales al tiempo que les asigna identificadores seguros. Dado que tanto el primer usuario que recibe un identificador seguro y el identificador de arranque se convierten en propietarios de volumen, además de la capacidad del identificador de arranque de conceder identificadores seguros a usuarios adicionales (y, por tanto, el estado de propietarios de volúmenes), la propiedad de los volúmenes no debería ser algo que tenga que gestionarse o manipularse activamente en las organizaciones. Las consideraciones anteriores para la gestión y la concesión de identificadores seguros deberían estar generalmente en línea también con el estado de propiedad de los volúmenes.
También se puede tener la propiedad de un volumen y no ser administrador, pero algunas tareas que requieren que se compruebe la propiedad de ambos. Por ejemplo, para modificar los ajustes de seguridad de arranque se requieren ambas cosas: ser administrador y propietario de un volumen, mientras que los usuarios estándar pueden autorizar las actualizaciones de software y solo requieren tener propiedad.
Si quieres ver la lista actual de propietarios de volumen en un ordenador Mac con chip de Apple, puedes ejecutar este comando:
sudo diskutil apfs listUsers /
Los GUID indicados en el resultado del comando diskutil
del tipo “Local Open Directory User” se asignan a los atributos GeneratedUID
de los registros de usuario en Open Directory. Para buscar un usuario por GeneratedUID
, utiliza este comando:
dscl . -search /Users GeneratedUID <GUID>
También puedes usar el siguiente comando para ver nombres de usuario e identificadores GUID juntos:
sudo fdesetup list -extended
La propiedad está protegida criptográficamente en Secure Enclave. Para obtener más información, consulta:
Utilización de la herramienta de línea de comandos
Las herramientas de línea de comandos sirven para gestionar el identificador de arranque y el identificador seguro. El identificador de arranque suele generarse en el Mac y custodiarse en la solución MDM durante el proceso de configuración de macOS cuando la solución MDM le dice al Mac que es compatible con esta función. Sin embargo, también es posible generar un identificador de arranque en un Mac que ya se haya implementado. En macOS 10.15.4 o posterior, se genera un identificador de arranque que será custodiado por la solución MDM durante el primer inicio de sesión de cualquier usuario autorizado por identificador seguro si la solución MDM admite esta función. Esto reduce la necesidad de usar la herramienta de línea de comandos profiles tras la configuración del dispositivo para generar un identificador de arranque nuevo que será custodiado por la solución MDM.
La herramienta de línea de comandos profiles
tiene varias opciones para interactuar con el identificador de arranque:
sudo profiles install -type bootstraptoken
: Este comando genera un identificador de arranque nuevo y lo custodia en la solución MDM. Este comando requiere información de administrador de identificador seguro para la generación inicial del identificador de arranque y la solución de MDM debe ser compatible con esta función.sudo profiles remove -type bootstraptoken
: Elimina el identificador de arranque que ya exista en el Mac y la solución MDM.sudo profiles status -type bootstraptoken
: Comunica si una solución MDM es compatible con la función de identificador de arranque y cuál es el estado actual de dicho identificador en el Mac.sudo profiles validate -type bootstraptoken
: Comunica si una solución MDM es compatible con la función de identificador de arranque y cuál es el estado actual de dicho identificador en el Mac.
Herramienta de línea de comandos sysadminctl
La herramienta de línea de comandos sysadminctl
puede utilizarse específicamente para modificar el estado del identificador seguro de las cuentas de usuario del ordenador Mac. Esto debe hacerse con precaución y únicamente cuando sea necesario. Cambiar el estado del identificador seguro de un usuario mediante sysadminctl
siempre requiere el nombre de usuario y contraseña de un administrador autorizado de identificador seguro existente, ya sea de forma interactiva o través de los correspondientes indicadores del comando. Tanto sysadminctl
como Ajustes del Sistema (macOS 13 o posterior) o Preferencias del Sistema (macOS 12.0.1 o anterior) evitan la eliminación del último administrador o usuario autorizado de identificador seguro de un Mac. Si la creación de usuarios locales adicionales está programada con sysadminctl
, para activar esos usuarios para la función de identificador seguro, es necesario introducir las credenciales del administrador autorizado de identificador seguro actual, ya sea mediante la opción interactiva o directamente a través de los indicadores de comando -adminUser
y -adminPassword
con sysadminctl
. Si no se otorga un identificador seguro en el momento de su creación, en macOS 11 o posterior, los usuarios locales que inicien sesión en un ordenador Mac recibirán un identificador seguro durante el inicio de sesión si la solución MDM proporciona un identificador de arranque. Utiliza sysadminctl -h
para recibir instrucciones de uso adicionales.