Referencia de expresiones de condiciones de activación - Guía de configuración de proyectos de Jamf School

Guía de configuración de proyectos de Jamf School

Solution
Application
Content Type
Documentación técnica
Utilities & Services
ft:locale
es-ES

Una expresión de condición es la sintaxis empleada para definir cuándo activar las configuraciones de un proyecto. Cada expresión de condición evalúa los atributos del dispositivo o las propiedades definidas por Jamf para determinar si se activa una configuración en el dispositivo. Cuando la expresión de la condición es true, se activa la configuración. Cuando es false, la configuración se mantiene inactiva para ese dispositivo. Puede unir varias expresiones mediante operadores lógicos para crear condiciones más complejas.

Estructura de condiciones de elementos de estado

Cada expresión de una condición se compone de tres partes: un ítem de estado, un operador y un valor.
Nota:Los elementos de estado son elementos de gestión declarativa de dispositivos específicos de Apple. Para obtener información sobre el uso de la propiedad definida por Jamf @property(jamf.device.groups), consulte la tabla de propiedades de Jamf.
ElementoSintaxisNotas
Elemento de estado@status(item.name)Un hecho que el dispositivo declara sobre sí mismo. Siempre envuelto en @status(item.name).
Valor de cadena'iPhone'Debe ir entre comillas simples.
Valor booleanotrue / falseSin comillas. Solo letras minúsculas.
Ninguna condición(dejar en blanco)El proyecto se activa en todos los dispositivos del ámbito.
Ejemplo:
@status(device.model.family) == 'iPhone'

Elementos de estado usados habitualmente

Los elementos de estado son los hechos declarados por el dispositivo que se pueden usar en las expresiones de una condición. Puede consultar la lista completa en el repositorio apple/device-management/declarative/status de GitHub.

Elemento de estadoTipoValores de ejemplo
device.model.familyCadenaiPhone, iPad, Mac, AppleTV
device.model.identifierCadenaiPhone15,2
device.operating-system.versionCadena17.4.1
device.identifierCadenaUDID del dispositivo
passcode.is-compliantBooleanotrue, false
device.is-supervisedBooleanotrue, false

Operadores admitidos

OperadorSignificadoEjemplo
==Es igual a@status(device.model.family) == 'iPhone'
!=No es igual a@status(device.model.family) != 'Mac'
IN {…}Coincide con cualquier valor de la lista@status(device.model.family) IN {'iPhone', 'iPad'}
< > <= >=Comparación numérica o de versión@status(device.operating-system.version) >= '17.0'

Operadores lógicos para unir condiciones

Palabra claveSignificadoEjemplo
ANDAmbas condiciones deben ser true@status(device.model.family) == 'iPhone' AND @status(passcode.is-compliant) == true
ORCualquiera de las dos condiciones puede ser true@status(device.model.family) == 'iPhone' OR @status(device.model.family) == 'iPad'
NOTLa condición debe ser falseNOT @status(device.model.family) == 'Mac'

Ejemplos de condiciones de elementos de estado

EscenarioExpresión de condición
Solo dispositivos iPhone@status(device.model.family) == 'iPhone'
Dispositivos iPhone o iPad@status(device.model.family) IN {'iPhone', 'iPad'}
Dispositivos iPhone supervisados con código conforme@status(device.model.family) == 'iPhone' AND @status(device.is-supervised) == true AND @status(passcode.is-compliant) == true
iOS 17 o posterior@status(device.operating-system.version) >= '17.0'
Todos menos los ordenadores Mac@status(device.model.family) != 'Mac'

Errores de sintaxis habituales

ErrorIncorrectoCorrecto
Signo igual simple en lugar de signo igual doble@status(device.model.family) = 'iPhone'@status(device.model.family) == 'iPhone'
Faltan las comillas simples antes y después de valores de cadena@status(device.model.family) == iPhone@status(device.model.family) == 'iPhone'
Uso incorrecto de mayúsculas y minúsculas en valores de cadena@status(device.model.family) == 'iphone'@status(device.model.family) == 'iPhone'
Cadena OR en lugar de IN para valores múltiples... == 'iPhone' OR ... == 'iPad'... IN {'iPhone', 'iPad'}
Comillas antes y después de valores booleanos@status(passcode.is-compliant) == 'true'@status(passcode.is-compliant) == true

Propiedades de Jamf

Use @property(jamf.device.groups) para incluir dispositivos en función de su pertenencia a grupos de dispositivos. Los grupos de dispositivos se definen en Jamf y no son elementos de estado de gestión declarativa de dispositivos de Apple. No puede usar @property(jamf.device.groups) con @status(jamf.device.groups).

OperadorSignificadoEjemplo
ANY … IN {…}El dispositivo pertenece al menos a uno de los grupos enumeradosANY @property(jamf.device.groups) IN {'groupA', 'groupB'}
NONE … IN {…}El dispositivo no pertenece a ninguno de los grupos enumeradosNONE @property(jamf.device.groups) IN {'groupA', 'groupB'}