Sécurité des activités d'audit
Les activités sur ThingWorx Platform s'effectuent dans le contexte d'un utilisateur, en particulier le contexte de sécurité d'un utilisateur. Un utilisateur peut être une personne qui appelle un service sur un objet ou il peut s'agir d'un serveur de connexion ThingWorx qui accède à la plateforme pour livrer des messages entrants de périphériques Edge. Ces deux utilisateurs opèrent dans un contexte de sécurité défini, déterminé par les permissions attribuées à l'utilisateur. Il existe des permissions pour les phases de conception et d'exécution.
* 
Pour plus d'informations sur l'audit d'un changement de contexte de sécurité, consultez la section Audit du changement de contexte de sécurité .
Autorisations ThingWorx
La sécurité des entités dans ThingWorx nécessite de définir les autorisations suivantes :
Autorisations de conception : elles définissent les utilisateurs et groupes d'utilisateurs autorisés à créer, lire, mettre à jour et supprimer des entités.
Autorisations d'exécution : elles définissent les groupes d'utilisateurs et les utilisateurs qui peuvent accéder aux données, exécuter des services et déclencher des événements sur un objet, notamment les tables de données, les flux et les utilisateurs. Vous pouvez définir des autorisations d'exécution au niveau de l'objet, du modèle d'objet ou de la collection d'entités. Les entités, les formes d'objet, les formes de données et les groupes d'utilisateurs abstraits d'un modèle ne disposent pas d'autorisations d'exécution.
Autorisations de visibilité : elles définissent l'organisation et les unités d'organisation qui disposent d'un accès pour afficher une entité. Si les membres d'une organisation ou des unités d'organisation ne disposent pas d'une autorisation de visibilité, ils ne peuvent afficher l'entité ni dans la liste d'entités, ni dans les résultats de recherche. Ils ne peuvent pas non plus se voir attribuer des autorisations de lecture, d'écriture, d'abonnement et autres, dans le cadre des droits de visibilité.
Cas d'utilisation et autorisations requises
Les cas d'utilisation, les données visibles aux utilisateurs et les autorisations requises sont notamment les suivants :
Les utilisateurs habilités à voir toutes les entrées d'audit, de la même manière qu'un administrateur, doivent être ajoutés au groupe d'utilisateurs créé en suivant la procédure de la section Autorisations requises par un non-administrateur pour l'exécution des services d'audit ci-dessous.
Les utilisateurs habilités à voir toutes les entrées d'audit associées à un objet particulier doivent être ajoutés au groupe d'utilisateurs Auditeurs et doivent disposer des autorisations d'exécution du service QueryAuditHistory sur l'objet, ainsi que des autorisations de visibilité et d'exécution sur l'objet.
Les utilisateurs habilités à voir uniquement les entrées d'audit dans leur contexte d'utilisateur doivent disposer des autorisations d'exécution du service QueryAuditHistory sur l'objet, ainsi que des autorisations d'exécution et de visibilité sur l'objet.
Autorisations pour les groupes d'utilisateurs Administrateurs et Auditeurs
Par défaut, les utilisateurs du groupe Administrateurs disposent de toutes les autorisations nécessaires pour tous les éléments de ThingWorx, y compris le sous-système d'audit, ses services et ses données. Par défaut, les utilisateurs du groupe Auditeurs peuvent voir les entrées d'audit créées par d'autres utilisateurs lors de l'exécution du service QueryAuditHistiory sur un objet. Pour les utilisateurs et les groupes d'utilisateurs non-administrateurs, les administrateurs doivent les autoriser à appeler les services fournis par le sous-système d'audit, en utilisant des remplacements de service. Pour plus d'informations sur l'utilisation des remplacements de service. reportez-vous à la rubrique Remplacements de service.
Par défaut, les utilisateurs du groupe Administrateurs disposent des autorisations sur les entités suivantes associées au sous-système d'audit :
Sous-système d'audit, qui est un objet système qui expose les services suivants dans les deux implémentations :
Exécution de services : QueryAuditHistory (exécution sur le sous-système d'audit)
Exécution de services : ArchiveAuditHistory
Exécution de services : ExportAuditData
Exécution de services : CleanupOfflineAudit
Exécution de services : GetAuditEntryCount
Exécution de services : PurgeAuditData
Exécution de services : ExportOnlineAuditData
Exécution de services : ArchiveAuditHistoryDirectPersistence
Exécution de services : QueryAuditHistoryWithQueryCriteria
Exécution de services : QueryAuditHistory (exécution sur un objet)
AuditArchiveFileRepository, qui est le référentiel de fichiers du sous-système d'audit utilisé pour les archives d'audit. Créé au démarrage du sous-système, le référentiel dispose d'un répertoire pour l'implémentation active. Si vous passez d'une implémentation à l'autre, les données d'audit de l'implémentation précédente sont conservées et un nouveau répertoire est créé pour l'implémentation actuellement active. La structure du référentiel est similaire à l'illustration suivante dans une installation où les deux implémentations ont été utilisées :
Selon l'implémentation active, l'un des deux planificateurs pour l'archivage des données d'audit :
AuditArchiveScheduler, qui est un objet Scheduler qui contrôle l'archivage automatisé des entrées d'audit pour l'implémentation de type Table de données.
AuditArchiveSchedulerDirectPersistence, qui est un objet Scheduler qui contrôle l'archivage automatisé des entrées d'audit pour l'implémentation de type Persistance directe.
AuditPurgeScheduler, qui est un objet Scheduler qui contrôle la purge automatisée des entrées d'audit en ligne.
AuditArchiveCleanupScheduler, qui planifie le nettoyage des fichiers de données d'audit hors ligne et archivés.
AuditArchiveCleanupNotificationScheduler : envoie des notifications de rappel de nettoyage.
Autorisations requises pour les utilisateurs non-administrateurs
La table ci-dessous présente les autorisations pouvant être accordées aux utilisateurs non-administrateurs d'un groupe d'utilisateurs pour leur donner accès à ces entités du sous-système d'audit.
* 
Veillez à ne pas autoriser les utilisateurs non administrateurs à modifier des objets au moment de la conception. Les administrateurs ne doivent pas modifier les objets système au moment de la conception. En procédant ainsi, vous risquez de perdre les modifications apportées lors d'une mise à niveau.
Autorisations requises pour l'audit d'entités par un groupe d'utilisateurs non-administrateurs
Entité
Permissions pour un groupe d'utilisateurs non administrateurs
Sous-système d'audit
Pour autoriser les utilisateurs et groupes d'utilisateurs non-administrateurs à appeler les services QueryAuditHistory, QueryAuditHistoryWithQueryCriteria, ArchiveAuditHistory, ExportAuditData, ExportOnlineAuditData, CleanupOfflineAudit, PurgeAuditData, GetAuditEntryCount et ArchiveAuditHistoryDirectPersistence :
Sous-système d'audit : Phase de conception > Lire.
Sous-système d'audit : Exécution > Substitutions de propriétés, services ou événements. Définissez un remplacement de service pour chaque service dont vous souhaitez autoriser l'appel par les utilisateurs du groupe, et ajoutez une Exécution de services pour chaque service.
AuditArchiveFileRepository
Permissions liées au AuditArchiveFileRepository du sous-système d'audit. Elles NE doivent PAS être accordées aux utilisateurs ou groupes d'utilisateurs non-administrateurs.
AuditArchiveScheduler (Implémentation de type Table de données)
Les utilisateurs du groupe Administrateurs doivent avoir accès à cet objet planificateur. Cet objet dispose d'une propriété appelée lastArchivedTime, qui est mise à jour après chaque exécution réussie d'une opération d'archivage. Bien que cela soit possible, cette propriété ne doit JAMAIS être mise à jour par un utilisateur, qu'il soit ou non-administrateur. Pour cette raison (et d'autres motifs propres à votre organisation), il est recommandé que les utilisateurs non-administrateurs n'aient PAS accès au planificateur.
AuditArchiveSchedulerDirectPersistence
Les utilisateurs du groupe Administrateurs doivent avoir accès à cet objet planificateur. Cet objet dispose d'une propriété appelée lastArchivedTimeDirectPersistence, qui est mise à jour après chaque exécution réussie d'une opération d'archivage. Bien que cela soit possible, cette propriété ne doit JAMAIS être mise à jour par un utilisateur, qu'il soit ou non-administrateur. Pour cette raison (et d'autres motifs propres à votre organisation), il est recommandé que les utilisateurs non-administrateurs n'aient PAS accès au planificateur.
AuditPurgeScheduler
Seuls les utilisateurs du groupe Administrateurs doivent avoir accès à cet objet planificateur. Il est recommandé de NE PAS autoriser les utilisateurs non administrateurs à accéder à ce planificateur.
AuditArchiveCleanupScheduler
Seuls les utilisateurs du groupe Administrateurs doivent avoir accès à cet objet planificateur. Il est recommandé de NE PAS autoriser les utilisateurs non administrateurs à accéder à ce planificateur.
AuditArchiveCleanupNotificationScheduler
Pour autoriser les utilisateurs non-administrateurs à exécuter la notification du service de nettoyage :
AuditArchiveCleanupNotificationScheduler : Phase de conception > Lire
AuditArchiveCleanupNotificationScheduler : Exécution > Substitutions de propriétés, services ou événements. Définissez un remplacement de service pour ce service (Exécution de services).
En général, pour autoriser les non-administrateurs d'un groupe d'utilisateurs à appeler les services du sous-système d'audit, un groupe d'utilisateurs doit être créé et les permissions suivantes doivent lui être accordées :
Sous-système d'audit : permissions de visibilité
Sous-système d'audit : permissions de conception : autoriser la lecture
AuditSubsystem : autorisations d'exécution : définissez un remplacement de service pour chaque service dont vous souhaitez autoriser l'appel par les utilisateurs du groupe, et autorisez l'Exécution de services.
Le tableau suivant répertorie les permissions qui doivent être accordées aux entités pour autoriser l'appel d'un service sur celles-ci dans le sous-système d'audit :
Autorisations d'exécution des services d'audit par les utilisateurs non-administrateurs
Service
Type d'entité
Nom de l'entité
Visibilité
Conception
Exécution
QueryAuditHistory
Sous-système
AuditSubsystem
Oui
Lire
Service QueryAuditHistory - Exécution de services
Forme de données
AuditHistory
Oui
Lire
QueryAuditHistoryWithQueryCriteria
Sous-système
AuditSubsystem
Oui
Lire
Service QueryAuditHistoryWithQueryCriteria - Exécution de services
Forme de données
AuditHistory
Oui
Lire
ArchiveAuditHistory
Sous-système
AuditSubsystem
Oui
Lire
Service ArchiveAuditHistory - Exécution de services
Objet
AuditArchiveScheduler
Oui
Aucune
Propriété LastArchiveTime : lecture de propriétés et écriture de propriétés
ArchiveAuditHistoryDirectPersistence
Sous-système
AuditSubsystem
Oui
Lire
Service ArchiveAuditHistory-DirectPersistence - Exécution de services
Objet
AuditArchiveSchedulerDirectPersistence
Oui
Aucune
Propriété LastArchiveTimeDirectPersistence : lecture de propriétés et écriture de propriétés
ExportAuditData
Sous-système
AuditSubsystem
Oui
Lire
Service ExportAuditData - Exécution de services
Objet
AuditArchiveScheduler
Oui
Aucune
Propriété LastArchivedTime : lecture de propriétés et écriture de propriétés
Objet
<Référentiel de fichiers utilisateur>
Oui
Aucune
Tous les services - Exécution de services
ExportOnlineAuditData
Sous-système
AuditSubsystem
Oui
Lire
Service ExportOnlineAuditData - Exécution de services
Objet
<Référentiel de fichiers utilisateur>
Oui
Aucune
Tous les services - Exécution de services
CleanupOfflineAudit
Sous-système
AuditSubsystem
Oui
Lire
Service CleanupOfflineAudit - Exécution de services
Objet
AuditArchiveCleanupScheduler
Oui
Aucune
Propriété DaysToArchive : lecture de propriétés et écriture de propriétés
Objet
AuditArchiveCleanupNotificationScheduler
Oui
Aucune
Lecture de propriétés et écriture de propriétés
Objet
<Référentiel de fichiers utilisateur>
Oui
Aucune
Tous les services - Exécution de services
PurgeAuditData
Sous-système
AuditSubsystem
Oui
Lire
Service PurgeAuditData - Exécution de services
Objet
AuditPurgeScheduler
Oui
Aucune
Lecture de propriétés et écriture de propriétés
GetAuditEntryCount
Sous-système
AuditSubsystem
Oui
Lire
Service GetAuditEntryCount - Exécution de services
Est-ce que cela a été utile ?