Gestion des intégrations
Vue d'ensemble et utilisation
La page Intégrations de PTC Admin Center affiche les informations de configuration du client aux administrateurs et opérateurs côté client qui pourront les utiliser pour créer une relation de confiance entre leurs applications tierces et leurs produits PTC, tels que Windchill+.
Les intégrations de client permettent de fournir des autorisations déléguées d'un système à un autre pour le compte d'un utilisateur. Ces intégrations permettent à l'utilisateur d'accéder à des systèmes PTC dans des applications tierces, telles que des applications Web ou des applications de code natif. Il s'agit souvent de systèmes ERP qui surveillent ou consomment les données de produits PTC.
Les clients d'intégration sont enregistrés auprès des services d'identité PTC pour récupérer un jeton d'autorisation au nom d'un utilisateur. Ce jeton peut ensuite être utilisé par l'application tierce pour demander l'accès à la ressource PTC requise par cette application tierce.
|
Actuellement, pour afficher la page Intégrations et utiliser cette fonctionnalité, votre organisation doit avoir accès à Windchill+. PTC fournit un client pour toutes les organisations Windchill+ dans le cadre du provisionnement de Windchill+.
|
PTC prend en charge la création d'applications confidentielles (applications pouvant renfermer les informations d'identification de manière sécurisée sans les exposer à des parties non autorisées) pour assurer l'intégration avec des systèmes tiers.
La page Intégrations permet à l'administrateur d'une organisation de gérer les intégrations de client pour son organisation. A partir de cette page, vous pouvez :
• Gérer les intégrations de client
• Accéder à toutes les informations d'identification du client requises
• Configurer les intégrations du client avec vos applications tierces externes en fournissant les informations d'identification du client
Avant de commencer
• Vous devez être l'administrateur de votre organisation pour afficher ou gérer les intégrations de client.
Propriétés de l'intégration du client
Les informations suivantes sont fournies pour configurer l'intégration d'un client :
• ID client : ID unique de l'application utilisé pour configurer l'authentification auprès de PTC. Votre application l'utilise lors de la demande d'un jeton d'accès OAuth 2.0.
• Clé secrète : chaîne qui signe et valide les jetons pour l'authentification et fournit l'accès à des points de terminaison PTC spécifiques. La clé existe par défaut mais vous devez lui appliquer une rotation pour qu'elle s'affiche.
• URL de rappel : URL de redirection autorisée pour l'authentification de l'utilisateur auprès des produits PTC.
• URL d'authentification : point de terminaison utilisé pour accorder à une application cliente l'autorisation d'accéder à des ressources protégées. Il est requis pour la connexion de votre application cliente aux ressources PTC.
• URL de jeton d'accès : point de terminaison qui permet au client d'échanger un code d'autorisation contre un jeton d'accès, permettant ainsi l'accès aux ressources protégées de l'utilisateur.
• Audience : identifie l'entité (URI ou serveur de ressources) à laquelle ce jeton d'accès est destiné. Cela permet au destinataire de vérifier si un jeton Web JSON (JWT) particulier lui est bien destiné.
Actuellement, l'audience acceptée est https://windchill-plus.
• Scope : tableaux des étendues accordées à ce jeton d'accès.
Actuellement, l'étendue autorisée est WINDCHILL_READ.
Gérer les intégrations de client
Les administrateurs de l'organisation peuvent créer plusieurs intégrations externes qui peuvent être utilisées pour configurer l'intégration de produits tiers avec des produits PTC tels que Windchill+. La page Intégrations affiche ces applications, et chaque application possède sa propre page de détails.
Pour gérer les intégrations de client :
1. Dans le volet de navigation de gauche, cliquez sur Intégrations.
2. Dans la page Intégrations, cliquez sur le nom de l'application ou sur Gérer.
|
La valeur de Nom par défaut est extraite de la valeur définie lors de la création de l'application Auth0.
|
La page de l'application sélectionnée s'ouvre dans le même onglet de navigateur. Toutes les actions effectuées sur cette page affectent uniquement le client OAuth 2.0 sélectionné et ses données.
Création d'une intégration
Pour configurer une intégration, procédez comme suit :
1. Connectez-vous à PTC Admin Center.
2. Accédez à la page Intégrations.
3. Dans la page Intégrations de PTC Admin Center, copiez les valeurs des paramètres suivants dans le Presse-papiers, puis collez-les dans la section correspondante de la page de vos applications tierces :
◦ ID client
◦ Clé secrète
a. Pour afficher la clé secrète, vous devez lui faire faire une rotation. Dans la page Intégrations de PTC Admin Center, sous la section Clé secrète, cliquez sur Rotation de la clé.
|
L'application d'une rotation à votre clé secrète génère une nouvelle clé et invalide la clé actuelle, en déconnectant toutes les intégrations associées. Cette action est irréversible.
|
b. Copiez la clé secrète dans la boîte de dialogue Nouvelle clé générée, puis cliquez sur Fermer.
|
• Après avoir fermé cette boîte de dialogue, vous ne pourrez plus afficher cette clé secrète.
• La clé secrète est confidentielle et vous devez toujours lui faire faire une rotation pour en générer une nouvelle à chaque fois que vous voulez utiliser la clé, en tant qu'administrateur ou opérateur. Cette mesure vise à protéger contre toute tentative d'utilisation malveillante de la clé secrète.
• L'utilisateur doit appliquer une rotation à la clé secrète, conformément aux bonnes pratiques du cycle de vie du développement logiciel (SDLC). Il s'agit d'une responsabilité partagée pour sécuriser les intégrations d'applications. Assurez-vous qu'après chaque rotation de la clé secrète, toutes les applications associées sont mises à jour avec la nouvelle clé.
|
◦ URL de l'application
Dans la section URL de l'application, cliquez sur l'icône en forme de crayon en regard d'URL de rappel pour spécifier l'URL de rappel de votre application tierce, puis cliquez sur Enregistrer.
◦ URL d'authentification
◦ URL de jeton d'accès
Consultez les étapes détaillées concernant l'utilisation de ces informations pour intégrer votre application tierce à la section
Génération d'un jeton d'accès avec votre application.
Génération d'un jeton d'accès avec votre application
Cette section décrit le processus de génération d'un jeton d'accès.
1. L'autorisation déléguée avec le flux de code d'autorisation commence par un appel de l'API GET REST au point de terminaison de l'authentification du serveur d'autorisation. Par exemple, GET https://<AUTHORIZATION_SERVER>/authorize?audience=<AUDIENCE>&response_type=code&client_id=<Client ID>&scope=<SCOPE>&redirect_uri=Callback URL>&state=<STATE> où :
◦ audience : entité à qui le jeton d'accès est destiné. Ce paramètre est obligatoire et doit être défini sur https://windchill-plus.
◦ response_type : indique que le serveur d'autorisation renvoie un code d'autorisation. Ce paramètre est obligatoire et doit être défini sur code.
◦ client_id : ID client que vous avez reçu de PTC Admin Center.
◦ scope : une ou plusieurs valeurs d'étendue indiquant les parties de l'application auxquelles vous souhaitez accéder. Ce paramètre est obligatoire et doit être défini sur WINDCHILL_READ.
◦ redirect_uri : URL de rappel de l'application.
◦ state : chaîne aléatoire générée par votre application, que vous vérifierez ultérieurement.
Par exemple, GET https://ptc-atlas-dev.us.auth0.com/authorize?audience=https://windchill-plus&response_type=code&client_id=rOTYOu4jQrKynCOZqvS9Pah6rVTxlGZi&scope=WINDCHILL_READ&redirect_uri=https://oauth.pstmn.io/v1/browser-callback&state=4000194150204c968a165f6fab08afa8 la page de connexion à PTC s'affiche.
2. Entrez vos informations d'identification pour vous connecter.
3. Une fois l'authentification réussie, le flux se poursuit et le serveur d'autorisation redirige vers l'URL de rappel avec le code et state d'autorisation comme paramètres de requête : <Callback URL>?code=<AUTH_CODE>&state=<STATE>
| L'application doit d'abord comparer cette valeur d'état pour s'assurer qu'elle correspond à celle utilisée initialement. Vous pouvez stocker la valeur d'état dans un cookie ou une session et la comparer lorsque l'utilisateur revient. Cela vous permet de vous assurer que votre point de terminaison de redirection est protégé contre toute tentative d'échange de codes d'autorisation arbitraires. |
Par exemple, https://oauth.pstmn.io/v1/browser-callback?code=wWR_mPfnggMSC694bf10bekymLYP6opBXNxmR3QYjIAPn&state=4000194150204c968a165f6fab08afa8
4. L'application échange ensuite le code d'autorisation pour obtenir un jeton d'accès en effectuant une requête POST vers le point de terminaison du jeton : POST https://<AUTHORIZATION_SERVER>/oauth/token
Charge utile de la demande :
grant_type: "authorization_code"
code: <AUTH_CODE>
redirect_uri: "<Callback URL>"
client_id: "<Client ID>"
client_secret: "<CLIENT_SECRET>"
où,
◦ grant_type=authorization_code : type d'octroi de ce flux, à savoir code d'autorisation.
◦ code=AUTH_CODE_HERE : code que vous avez reçu dans la chaîne de requête.
◦ redirect_uri=REDIRECT_URI : doit être identique à l'URI de redirection fourni dans le lien d'origine.
◦ client_id=CLIENT_ID : ID client que vous avez reçu de PTC Admin Center.
◦ client_secret=CLIENT_SECRET : secret inclus, la requête ayant été effectuée à partir d'un code côté serveur.
Corps de la réponse : {"access_token":"<Access Token>","scope":"WINDCHILL_READ","expires_in":3600,"token_type":"Bearer"}
5. Utilisez le jeton d'accès pour effectuer des appels d'API vers les systèmes PTC en l'envoyant avec les en-têtes d'autorisation : /Windchill/oauth/servlet/odata/ProdMgmt/Parts?$filter=startswith(Name,'Axle')&ptc.search.latestversion=true
En-têtes de requête : <Authorization: Bearer Access Token>