Configuration de ThingWorx Navigate avec SAP pour utiliser OAuth 2.0
Configuration requise
ThingWorx est configuré pour SSL (Secure Sockets Layer) et l'authentification unique. Pour plus d'informations, reportez-vous aux documents suivants :
Rôle
|
Application
|
Fournisseur de services (SP)
|
ThingWorx Navigate
|
Serveur d'authentification central SAML
|
PingFederate
|
Serveur d'autorisation OAuth
|
SAP
|
Fournisseur d'identité (IdP)
|
IdP prenant en charge SAML 2.0
|
Fournisseur de ressources (RP)
|
SAP
|
Dans ce cas d'utilisation, la plateforme ThingWorx, sur laquelle ThingWorx Navigate s'exécute, est configurée pour échanger directement des jetons d'accès avec SAP pour récupérer les ressources protégées par le protocole OAuth. PingFederate ne gère pas l'échange de jetons d'accès entre SAP et ThingWorx Navigate mais PingFederate est utilisé pour gérer les demandes de connexion d'utilisateur de ThingWorx Navigate. Si vous utilisez un fournisseur d'identité pour gérer les comptes utilisateur SAP et un autre fournisseur d'identité pour gérer les comptes utilisateur ThingWorx Navigate, un utilisateur ThingWorx Navigate doit d'abord se connecter à SAP avant de se connecter à ThingWorx Navigate. Une fois que ThingWorx Navigate est autorisé à accéder à SAP, l'utilisateur n'a plus besoin de se connecter à SAP lors de la prochaine connexion à ThingWorx Navigate car ThingWorx Navigate stocke l'autorisation d'accès.
|
PTC ne fournit pas de prise en charge pour la configuration d'OAuth dans SAP. Reportez-vous à la documentation SAP ou au support client.
|
Pour pouvoir connecter ThingWorx Navigate à SAP, vous devez compléter plusieurs étapes dans ThingWorx.
A ce stade, vous avez déjà configuré ThingWorx pour l'authentification unique. Cependant, avant de commencer à définir la connexion à SAP Netweaver Gateway, vous devez effectuer quelques étapes supplémentaires. Celles-ci permettront de configurer l'accès à SAP de ThingWorx à l'aide d'OAuth. Par la suite, votre connexion à SAP fonctionnera avec la configuration à authentification unique. Assurez-vous de remplacer toutes les valeurs entre crochets, telles que <SAP CLIENT ID>, par les informations ou les chemins d'accès propres à votre organisation.
1. Définition du serveur SAP
Tout d'abord, nous allons entrer les détails du serveur SAP.
1. Arrêtez Apache Tomcat.
2. Accédez au fichier suivant et ouvrez-le : \ThingworxPlatform\ssoSecurityConfig\sso-settings.json.
3. Dans ce fichier, recherchez la section AuthorizationServersSettings, puis ajoutez-y le serveur d'autorisation SAP. Voici les informations à inclure :
◦ clientId : ID créé pour votre instance SAP
◦ clientSecret : mot de passe de votre instance SAP
◦ authorizeUri : URI d'autorisation SAP de votre instance SAP
◦ clientAuthScheme : en-tête
Exemple : Assurez-vous d'utiliser les informations de votre instance de SAP et assurez-vous que les valeurs ne contiennent pas d'espaces :
"AuthorizationServersSettings":{
"SAP_AuthorizationServerId1": {
"clientId": "<SAP_CLIENT_ID>",
"clientSecret": "<SAP_CLIENT_SECRET>",
"authorizeUri": "<https://SAPHostame:Port/sap/bc/sec/oauth2/authorize>",
"tokenUri": "https://SAPHostname:Port/sap/bc/sec/oauth2/token",
"clientAuthScheme": "header"}
}
Vous recherchez des d'informations de référence plus détaillées ? Consultez la rubrique "
Configure sso-settings.json File" dans l'aide de
ThingWorx.
|
Ajoutez les certifications SSL de SAP au cacerts de la machine virtuelle Java. Assurez-vous d'utiliser cette machine virtuelle Java :
<JAVA_HOME>\jre\lib\security\cacerts
|
Vous avez maintenant terminé la configuration OAuth pour
ThingWorx et
SAP Netweaver Gateway. Vous pouvez passer à la configuration de
ThingWorx Navigate. Consultez la section
Connexion de ThingWorx Navigate à SAP.