Mise en route de ThingWorx Navigate > Installation de ThingWorx Navigate > Configuration de ThingWorx Navigate avec l'authentification Windchill
  
Configuration de ThingWorx Navigate avec l'authentification Windchill
Cette option utilise l'authentification Windchill pour ThingWorx. Lorsqu'un utilisateur ouvre un navigateur pour accéder à une application composite ou à une URL ThingWorx, il est redirigé vers Windchill à des fins d'authentification. Une fois l'utilisateur authentifié, le navigateur est redirigé vers l'application composite ou une autre page de ThingWorx. L'utilisateur peut alors accéder à ThingWorx ou à l'application composite en tant qu'utilisateur authentifié dans Windchill. Pour obtenir des informations techniques, consultez la rubrique Architecture de l'authentification Windchill.
Cette configuration requiert l'existence du même utilisateur dans Windchill et dans ThingWorx. ThingWorx Navigate propose une option permettant de créer automatiquement des utilisateurs dans ThingWorx une fois qu'ils ont été authentifiés dans Windchill. Si cette option n'est pas activée, les utilisateurs doivent exister dans Windchill et dans ThingWorx, indépendamment. Après avoir créé un utilisateur dans ThingWorx, l'administrateur doit ajouter l'utilisateur au groupe ThingWorx spécifié afin que ce dernier puisse accéder aux tâches ThingWorx Navigate. Pour obtenir plus d'informations, consultez la rubrique Modification des autorisations de ThingWorx.
* 
Windchill doit être configuré pour SSL. Nous vous recommandons également de configurer ThingWorx avec SSL. Pour obtenir plus d'informations, consultez la rubrique Utilisation de SSL pour la sécurisation des communications.
Pour configurer ThingWorx Navigate avec Windchill, procédez comme suit :
1. Si EnableSSO apparaît dans le fichier platform-settings.json (ThingworxPlatform), définissez-le sur false, puis redémarrez Tomcat.
* 
Si cet élément n'apparaît pas dans le fichier platform-settings.json et que vous utilisez le fichier platform-settings.json standard, vous pouvez passer à l'étape 2.
2. Ouvrez ptc-windchill-integration-connector, puis sélectionnez Configuration.
Définissez Type d'authentification sur None.
Il n'est pas nécessaire de renseigner le Nom d'utilisateur et le Mot de passe.
Dans URL de base, entrez https://<Nom d'hôte Windchill>:<Port>/Windchill/sslClientAuth
, puis cliquez sur Enregistrer.
3. Ouvrez ptc-windchill-integration-connector-proxy, puis sélectionnez Configuration.
URL : https://<Nom d'hôte Windchill>
Définissez Type d'authentification sur Session User.
Il n'est pas nécessaire de renseigner Username et Password.
Dans SSL Connection Configuration, spécifiez le chemin d'accès aux informations Keystore et TrustStore, puis ajoutez les mots de passe.
Dans Session User Configuration, vérifiez que wt.effectiveUid est bien la valeur définie pour Session User Query Parameter, sauf indication contraire dans Windchill.
4. Pour tester la configuration de ThingWorx Navigate, procédez comme suit :
Dans ThingWorx Composer, accédez à ptc-windchill-integration-connector, sélectionnez Services et exécutez le service Validate Connection. Le message suivant confirme que la connexion au serveur Windchill a bien été établie : Success - 200-OK - WindchillSwaggerConnector
Pour vérifier que les données peuvent être extraites du serveur Windchill, ouvrez l'URL de la page d'accueil de ThingWorx Navigate : http://<hôte>:<port>/Thingworx/Runtime/index.html?master=PTC.AccessApp.Master&mashup=LandingPageAccessAppMashup.
Configuration de PTC Identity Provider Authenticator
Les étapes suivantes expliquent comment configurer PTC Identity Provider Authenticator.
1. Sélectionnez Authentificateur sous SECURITE, dans le volet de navigation de gauche.
2. Cliquez sur le lien ptc-identity-provider-authenticator pour afficher des informations générales sur l'extension. La page Informations générales s'ouvre.
3. Sur la page Informations générales, procédez comme suit :
a. Sélectionnez la case à cocher Activée.
b. Entrez la valeur dans le champ Priorité. Par défaut, la priorité est 1, ce qui indique que cet authentificateur est le premier à s'exécuter.
La valeur définie dans le champ Priorité est importante si vous souhaitez implémenter des vérifications effectuées par plusieurs authentificateurs. En cas d'échec de l'authentificateur associé à une priorité de 1, l'authentificateur suivant effectue la vérification, et ainsi de suite.
4. Cliquez sur l'option Configuration située sous INFORMATIONS SUR L'ENTITE, dans le volet de navigation de gauche :
Utilisez les deux options CreateUserDynamically et HomeMashup, avec l'authentification unique, afin que les utilisateurs authentifiés auprès de Windchill soient automatiquement ajoutés en tant qu'utilisateurs dans ThingWorx et se voient associer une application composite d'accueil. Lorsqu'un utilisateur ouvre un navigateur dans ThingWorx pour la première fois, il est redirigé vers Windchill à des fins d'authentification. Une fois qu'il est authentifié, un utilisateur correspondant est créé dans ThingWorx et se voit affecter une application composite d'accueil. Ensuite, le navigateur est redirigé vers l'application composite d'accueil indiquée.
CreateUserDynamically : lorsque cette option est sélectionnée, le système configure un authentificateur pour créer automatiquement un utilisateur dans ThingWorx, s'il n'en existe pas déjà un et si cet utilisateur a été authentifié par Windchill.
Si l'authentificateur n'est pas configuré pour créer automatiquement des utilisateurs, le navigateur est malgré tout redirigé vers Windchill pour l'authentification, mais ne parvient pas à ouvrir ThingWorx si l'utilisateur n'existe pas.
* 
Si l'utilisateur reçoit un message d'erreur 500, cela signifie qu'il n'existe pas dans ThingWorx.
HomeMashup : cette option affecte une application composite d'accueil aux utilisateurs que le système vient de créer. Si aucune application composite d'accueil n'est indiquée, ThingWorx redirige le navigateur vers la page de recherche de ThingWorx.
Pour ThingWorx Navigate, définissez cette option sur LandingPageAccessAppMashup.
5. Assurez-vous qu'une valeur d'application composite d'accueil est définie pour tous les utilisateurs créés dynamiquement à l'aide du champ HomeMashup (décrit à l'étape précédente), ou pour les utilisateurs existants (autres que les administrateurs) sur les pages Informations générales des utilisateurs. Si aucune application composite d'accueil n'est définie pour un utilisateur général, ce dernier est redirigé vers la page de recherche par défaut de ThingWorx.
6. Cliquez sur Enregistrer.
Les utilisateurs doivent être ajoutés aux groupes spécifiés. Pour obtenir plus d'informations, consultez la rubrique Modification des autorisations de ThingWorx.
Ajout de filtres de servlet à la configuration du système Tomcat
A l'aide du filtre d'authentification IdP de Windchill, l'utilisateur ThingWorx non authentifié est redirigé vers le formulaire de connexion Windchill afin d'y indiquer ses informations d'authentification. Une fois que l'authentification a abouti, l'application ThingWorx reçoit une clé et un nom d'utilisateur.
Le filtre est configuré du côté de ThingWorx, dans le fichier web.xml situé dans le répertoire d'installation du système Tomcat de ThingWorx. Procédez comme suit :
1. Arrêtez Tomcat et Integration Runtime.
2. Copiez le fichier ptc-identity-provider-authentication-filter-{version}.jar du dossier idp de ptc-windchill-extension-bundle dans le répertoire WEB-INF/lib se trouvant dans le répertoire d'installation du système Tomcat de ThingWorx.
3. Accédez au fichier web.xml dans Tomcat-install\webapps\Thingworx\WEB-INF\web.xml.
4. Copiez le fichier web.xml du dossier Tomcat-install\webapps\Thingworx\WEB-INF, puis enregistrez-le dans un autre emplacement.
5. Remplacez le fichier web.xml du dossier Tomcat-install\webapps\Thingworx\WEB-INF par le fichier web.xml du dossier ptc-windchill-extension-bundle\idp\twx-8.1.x.
6. Ouvrez le fichier web.xml, puis ajoutez vos informations Windchill Server dans [http or https]://[windchill-host]:[windchill-port]/windchill-web-app] dans les filtres IdentityProviderAuthenticationFilter et IdentityProviderKeyValidationFilter.
7. Démarrez Tomcat et Integration Runtime.
* 
Une fois la valeur de authparam définie dans le fichier web.xml de Windchill, la valeur standard n'est plus valide. Pour récupérer les données appropriées, modifiez la valeur de Session User Query Parameter dans ptc-windchill-integration-connector-proxy.
Vérification de la configuration
Windchill et ThingWorx doivent tous deux s'accorder sur le nom de l'administrateur. Les options suivantes méritent alors réflexion :
Si vous n'avez apporté aucune modification dans Windchill, un administrateur appelé "Administrator" a été créé lors de l'installation de Windchill. En utilisant un système ThingWorx configuré, vous pouvez vous authentifier en tant qu'utilisateur de ce nom et disposer de tous les droits d'accès de l'administrateur dans ThingWorx.
Si vous avez modifié Windchill de sorte qu'il n'existe aucun utilisateur portant le nom "Administrator", vous devez opter pour un nom d'utilisateur partagé par Windchill et ThingWorx et l'ajouter dans ThingWorx et dans le groupe d'utilisateurs Administrateurs.
Pour vérifier la configuration de l'authentification Windchill, ouvrez un navigateur et accédez à l'URL ThingWorx. Le navigateur est redirigé vers Windchill à des fins d'authentification. Fournissez les informations d'identification de Windchill pour l'utilisateur "Administrator" (ou pour tout autre utilisateur configuré pour jouer le rôle d'administrateur ThingWorx). Le navigateur est redirigé vers ThingWorx, qui ouvre ThingWorx Composer. Vérifiez que vous êtes bien connecté à ThingWorx sous l'identité de cet utilisateur. Cela permet de s'assurer que ThingWorx est correctement configuré avec l'authentification Windchill.
Ensuite, si vous avez opté pour la création automatique des utilisateurs par l'authentificateur, testez cette fonctionnalité. Pour la vérifier, ouvrez un navigateur et accédez à l'URL ThingWorx. Vous êtes redirigé vers Windchill à des fins d'authentification. Fournissez les informations d'identification d'un utilisateur Windchill qui n'existe pas dans ThingWorx. Votre navigateur est redirigé vers ThingWorx, sur la page signalée comme application composite d'accueil. Vérifiez que vous êtes bien connecté à ThingWorx sous l'identité de l'utilisateur adéquat.