Présentation de la structure d’un manifeste JSON Schema

Vous pouvez utiliser un éditeur de texte brut pour créer le manifeste JSON Schema pour votre app et un outil de validation tiers pour valider votre mise en page, par exemple https://jsonlint.com.

Le format général d’un manifeste d’app ressemble au manifeste JSON Schema présenté sur le site web suivant :
https://support.google.com/chrome/a/answer/9771882

Pour la documentation officielle et pour plus d’informations sur JSON Schema, consultez le site web suivant :
https://json-schema.org

Propriétés de l’application

Un manifeste d’app se compose d’un en-tête suivi d’une liste des propriétés de l’application. Chaque propriété contient une paire clé-valeur. Si ces paires clé-valeur sont définies et que le manifeste est ajouté à Jamf Pro, Jamf Pro génère automatiquement une vue conviviale de la liste des propriétés dans l’interface Jamf Pro pour vous permettre de personnaliser l’app.

Chaque propriété définie dans le manifeste JSON Schema contient les éléments suivants :

  • Key Name – Cet élément indique le nom de la propriété.

  • title – Cet élément définit le nom de la propriété.

  • description – Cet élément définit la description de la propriété.

  • property_order – Cet élément définit l’ordre numérique de la propriété dans la liste, du haut vers le bas. Les nombres les plus petits s’affichent en haut.

  • type – Cet élément définit le type de valeur dans la propriété (par ex., « entier »).
    Pour obtenir la liste des types de valeurs et leur implémentation dans Jamf Pro, consultez Annexe : Réglages configurables.

Le tableau suivant présente un exemple de manifeste JSON Schema pour l’exemple d’app « Gestionnaire de disque », divisé en un en-tête et plusieurs propriétés de l’application. Chaque ligne du tableau montre comment générer le formulaire et illustre le formulaire affiché dans Jamf Pro.

Propriété de l’application

Paire clé-valeur

Réglage généré par Jamf Pro.

En-tête

{

"title": "Disk Manager (net.talkingmoose.diskmanager)",

"description": "Preference settings for the Disk Manager application",

"properties": {

L’en-tête comprend le titre du manifeste ainsi qu’une description. Il peut également contenir des informations utiles, telles que le domaine de l’app (identifiant de bundle).

Propriété 1

"askForPasswordDelay": {

"title": "Ask For Password Delay",

"description": "Disk Manager will wait the selected amount of time before requiring a password.",

"property_order": 5,

"type": "integer",

"options": {

"enum_titles": ["immediately", "5 seconds", "1 Minute", "5 Minutes", "15 Minutes", "1 Hour", "4 hours", "8 hours"]

},

"enum": [0,5,60,300,900,3600,14400,28800]

},

Le type de cette propriété définit la valeur comme un integer et contient les options prédéfinies de la propriété (définies dans la paire clé-valeur enum_titles).

Définir des valeurs pour la paire clé-valeur enum_type permet à Jamf Pro de générer ce réglage sous la forme d’un menu contextuel, avec des options basées sur ces valeurs.

Propriété 2

"diskCacheSize": {

"title": "Disk Cache Size",

"description": "Set disk cache size, in bytes.",

"property_order": 10,

"type": "integer"

},

Le type de cette propriété définit la valeur comme un integer, mais n’inclut pas un groupe d’options prédéfinies.

Jamf Pro génère ce réglage sous la forme d’un champ texte dans lequel vous pouvez saisir un entier.

Propriété 3

"primaryServer": {

"title": "Primary Server",

"description": "Disk Manager will default to this server.",

"property_order": 15,

"type": "string",

"options": {

"enum_titles": ["Server 1", "Server 2", "Server 3"]

},

"enum": ["https://server1.talkingmoose.net/", "https://server2.talkingmoose.net/", "https://server3.talkingmoose.net"/]

},

Le type de cette propriété définit la valeur comme une string et contient les options prédéfinies comme valeurs de la propriété (définies dans la paire clé-valeur enum_titles).

Définir des valeurs pour la paire clé-valeur enum_type permet à Jamf Pro de générer ce réglage sous la forme d’un menu contextuel, avec des options basées sur ces valeurs.

Propriété 4

"downloadDirectory": {

"title": "Download Directory",

"description": "Choose the default location for downloading working files.",

"property_order": 20,

"type": "string"

},

Le type de cette propriété définit la valeur comme une string, mais n’inclut pas un groupe d’options prédéfinies.

Jamf Pro génère ce réglage sous la forme d’un champ texte dans lequel vous pouvez saisir du texte.

Propriété 5

"askForPassword": {

"title": "Ask For Password",

"description": "Set Disk Manager application to require a password.",

"property_order": 25,

"type": "boolean"

},

Le type de cette propriété définit la valeur comme un boolean.

Jamf Pro génère ce réglage sous la forme d’un menu contextuel avec les options « true » ou « false ».

Propriété 6

"domainSafeList": {

"title": "Domain Safelist",

"description": "Disk Manager will not filter these domains.",

"property_order": 30,

"type": "array",

"items": {

"type": "string",

"title": "Domain"

}

},

Le type de cette propriété définit la valeur comme un array et les éléments du tableau comme des string.

Jamf Pro génère ce réglage sous la forme d’une liste contenant un ou plusieurs champs texte dans lesquels vous pouvez renseigner des données.

Propriété 7

"serverList": {

"title": "Server List",

"description": "Add servers to management list.",

"property_order": 35,

"type": "array",

"items": {

"type": "object",

"properties": {

"serverAddress": {

"title": "Hostname",

"type": "string"

},

"macAddress": {

"title": "MAC Address",

"type": "string"

},

"ipAddress": {

"title": "IP Address",

"type": "string"

}

}

}

}

Le type de cette propriété définit la valeur comme un array avec un ou plusieurs dictionnaires, chacun contenant des sous-propriétés définies comme string.

Jamf Pro génère ce réglage sous la forme d’une liste de champs texte dans lesquels vous pouvez renseigner des informations pour plusieurs éléments de la liste. Le nombre de champs supplémentaires dans la liste dépendra du nombre de sous-propriétés définies.

Remarque : La dernière propriété définie dans le manifeste ne comporte pas de virgule à la suite de la dernière accolade (« } »).

Interface Jamf Pro

Après avoir ajouté le manifeste JSON Schema à Jamf Pro, Jamf Pro génère automatiquement une vue conviviale de la liste des propriétés dans l’interface Jamf Pro pour vous permettre de personnaliser l’app comme suit :

images/download/attachments/80756546/FR.png

Copyright     Politique de confidentialité     Conditions générales     Sécurité
© copyright 2002-2020 Jamf. Tous droits réservés.