Sécurité
ThingWorx fournit un modèle de sécurité très granulaire. Il existe deux ensembles d'autorisations, un dédié à la conception et l'autre à l'exécution. Les autorisations de conception sont consacrées à la gestion des utilisateurs autorisés à modifier le modèle (créer, lire, mettre à jour et supprimer des entités), tandis que les autorisations d'exécution déterminent qui peut accéder aux données, exécuter des services et déclencher des événements sur un objet (ce qui inclut des tables de données, les flux et les utilisateurs). Les paramètres régissant la sécurité et les autorisations se trouvent sous la section SECURITE et dans les menus Composer.
Pour chaque autorisation, vous pouvez explicitement autoriser un utilisateur ou un groupe à réaliser une action (comme modifier un objet) ou explicitement priver un groupe d'une capacité donnée, notamment ne pas autoriser un groupe Utilisateurs à modifier un objet. Vous pouvez appliquer les autorisations au niveau des groupes et au niveau des utilisateurs. Le refus explicite d'un privilège prévaut toujours sur l'accord d'un privilège. Notez que, par défaut, les vérifications de sécurité n'autorisent pas l'exécution d'une opération. Si un utilisateur n'a reçu aucune autorisation spécifique, ces opérations sont refusées.
Les autorisations de conception concernent les opérations CRUD standard (Créer, Lire, Mettre à jour, Supprimer) sur n'importe quelle entité. Elles contrôlent la définition du modèle et déterminent qui peut apporter des modifications au modèle. Il est possible d'appliquer ces autorisations à différentes entités (lire, mettre à jour ou supprimer un objet, une forme d'objet, une forme de données, etc. spécifique) ou de les appliquer de façon générale à la totalité d'une collection d'entités (créer, lire, mettre à jour ou supprimer des objets, des formes d'objet, des formes de données, etc.). Si vous appliquez des autorisations à la collection, vous pouvez remplacer, ajouter ou limiter des autorisations au niveau de chaque entité.
Les autorisations d'exécution s'appliquent à tous les aspects d'une entité, tels que lecture de propriétés, écriture de propriétés, exécution d'événements et exécution de services. Les dérogations des autorisations d'exécution permettent de réduire les autorisations pour des aspects spécifiques, comme des propriétés, des services ou des événements.
Vous pouvez définir des autorisations d'exécution au niveau de l'objet, du modèle d'objet ou de la collection. Une collection est un groupe d'objets ou de modèles d'objet. Les autorisations appliquées à une collection sont héritées par tous les éléments qui la composent. Vous pouvez également définir des autorisations d'exécution et de conception au niveau de chaque modèle d'objet, auquel cas tous les objets dérivés d'un modèle d'objet héritent de ces paramètres. Toutes les autorisations héritées peuvent être remplacées au niveau de chaque objet.
Les entités abstraites d'un modèle ne disposent pas d'autorisations d'exécution. Ces entités comprennent les formes d'objet, les formes de données et les groupes.
* 
Si les utilisateurs/groupes correspondants n'existent pas avant d'effectuer votre importation à partir de ThingworxStorage sur le serveur cible, les collections ne sont pas écrites comme prévu. Pour faire en sorte que l'import des autorisations soit mené à bien, vous devez créer les utilisateurs et les groupes dans ThingWorx. Créez une exportation de vos utilisateurs et de vos groupes, importez-les, puis importez le reste de votre modèle.
* 
Les autorisations au niveau de la collection (objets, modèles d'objet, journaux, etc.) sont exportées ou importées uniquement si vous effectuez une exportation vers ThingworxStorage ou une importation depuis ThingworxStorage. Si vous procédez à une importation ou à une exportation à partir d'un fichier, les autorisations au niveau de la collection s'appliquent uniquement au niveau des entités.