Configuration de l'accès public à ThingWorx
Dans ThingWorx Studio, les expériences présentes dans un projet publié peuvent être accessibles au public en définissant la propriété Accès du projet sur Public. Cela permet au contenu publié dans experience service d'être accessible sans authentification. Si les expériences publiques requièrent un accès aux données de ThingWorx, experience service doit être configuré pour autoriser les expériences publiques à accéder à ThingWorx de manière anonyme.
experience service sert de proxy au serveur ThingWorx. Lorsqu'une expérience demande à ThingWorx de récupérer une valeur de propriété ou d'invoquer un service, la demande passe d'abord par experience service. Si l'expérience est publique, le proxy experience service ajoute une clé d'application à la demande avant de transférer la demande au serveur ThingWorx. Cette clé d'application identifie les informations d'identification ThingWorx utilisées pour exécuter la demande. experience service doit être configuré avec une clé d'application appropriée pour que l'accès public ThingWorx requis puisse accéder à des expériences.
Si une expérience fournit des données provenant de ThingWorx, l'accès public aux données de ThingWorx doit également être fourni.
Configuration de la clé d'application
|
Dans certains cas, la configuration de la clé d'application pour la prise en charge de l'accès public peut avoir été effectuée dans le cadre de l'installation de votre experience service. Dans ce cas, un utilisateur nommé es-public-access et une clé d'application avec le même nom existent déjà sur votre serveur ThingWorx et votre experience service sera déjà configuré pour utiliser cette clé d'application pour l'accès public à ThingWorx. En outre, une organisation nommée es-public-access-org existera déjà et l'utilisateur es-public-access sera membre de cette organisation. Si tel est le cas, vous pouvez ignorer cette section. Pour terminer la configuration de l'accès public de votre serveur ThingWorx, suivez les étapes de la section "Activation de l'accès aux propriétés, services et événements" dans Octroi des permissions d'utilisateur.
|
Pour autoriser l'accès des expériences publiques à ThingWorx sans inviter les utilisateurs à s'authentifier, experience service et le serveur ThingWorx associé doivent être configurés pour activer l'accès public. Pour autoriser l'accès public à ThingWorx, une clé d'application doit être créée dans ThingWorx, qui peut être utilisée pour accéder à toute propriété ou tout service dans ThingWorx requis par les expériences connectées publiquement. Procédez comme suit pour créer la clé d'application requise dans ThingWorx.
1. Créez un utilisateur nommé es-public-access.
2. Créez une organisation nommée es-public-access-org.
3. Ajoutez l'utilisateur es-public-access à l'organisation es-public-access-org.
4. Configurez l'utilisateur afin qu'il dispose des permissions nécessaires pour accéder aux données ThingWorx requises par les expériences publiques. Pour obtenir plus d'informations sur les permissions qui doivent être accordées à l'utilisateur es-public-access, reportez-vous à la section "Autorisation de l'utilisateur" ci-dessous.
5. Configurez l'organisation es-public-access-org afin qu'elle dispose des permissions de visibilité nécessaires pour accéder aux données ThingWorx requises par les expériences publiques. Pour obtenir plus d'informations sur les permissions qui doivent être accordées à l'organisation es-public-access-org, reportez-vous à la section "Autorisation de l'utilisateur" ci-dessous.
6. Créez une clé d'application et associez-la à l'utilisateur es-public-access.
7. Accédez à la console d'administration pour d' experience service.
8. Modifiez les paramètres de proxy ThingWorx et définissez le paramètre de clé d'application anonyme afin qu'il soit égal à la propriété keyId de la clé d'application créée à l'étape 3.
Autorisation de l'utilisateur
Pour permettre aux utilisateurs des expériences publiques d'accéder aux propriétés et services requis dans ThingWorx, l'utilisateur es-public-access défini ci-dessus doit disposer des permissions d'exécution suivantes dans ThingWorx pour les connexions WebSocket et les données de l'expérience.
• Connexions WebSocket :
◦ Permission Visibilité sur la ressource EntityServices
◦ Permission Exécution de services sous Exécution pour le service GetClientApplicationKey de la ressource EntityServices
◦ Permission Visibilité sur le modèle d'objet SDKGateway
◦ Permission Instance de visibilité sur le modèle d'objet SDKGateway
◦ Permission Exécution de services sous Instance d'exécution pour le modèle d'objet SDKGateway
Pour plus d'informations sur l'octroi de ces permissions, consultez la section "Activation des connexions WebSocket" dans
Octroi des permissions d'utilisateur.
• Données d'expérience :
◦ Permission Visibilité pour toute entité à laquelle une expérience publique accède
◦ Permission Lecture de propriétés sous Exécution pour toutes les propriétés supplémentaires dont les valeurs sont affichées dans une expérience publique
◦ Permission Exécution de services sous Exécution pour tous les services supplémentaires utilisés par une expérience publique
◦ Permission Abonnement à des événements sous Exécution pour l'événement DataChange sur les objets dont les valeurs de propriété sont configurées pour l'actualisation automatique
Pour plus d'informations sur l'octroi de ces permissions, consultez la section "Activation de l'accès aux propriétés, services et événements" dans
Octroi des permissions d'utilisateur.
En outre, l'organisation es-public-access-org doit disposer des permissions de visibilité suivantes dans ThingWorx pour les connexions WebSocket et les données d'expérience.
• Connexions WebSocket :
◦ Permission Visibilité sur la ressource EntityServices
◦ Permission Instance de visibilité sur le modèle d'objet SDKGateway
• Données d'expérience :
◦ Permission Visibilité pour toute entité à laquelle une expérience publique accède
Sujet parent