Étapes de configuration de l'authentification basée sur un certificat (WS-Security) pour les services Web à l'aide de SoapUI
Cet article de la base de connaissances a été traduit automatiquement pour vous faciliter la tâche. SAP ne garantit pas l'exactitude ou l'exhaustivité de cette traduction automatique. Vous pouvez trouver le contenu d'origine en passant à l'anglais à l'aide du sélecteur de langue.
Étapes de configuration de l'authentification basée sur un certificat (WS-Security) pour les services Web
Service Web entrant vers Ariba :
- Utilisez un keystore avec un certificat X.509 codé à l'aide du codage en base64 Privacy Enhanced Mail (PEM). Si vous n'en avez pas d'une autorité de certification valide, vous pouvez générer un fichier de stockage des clés/certificat auto-signé en procédant comme suit :
- Ouvrez votre invite de commande et remplacez le répertoire par le répertoire bin d'installation Java de votre ordinateur
- Exécutez la commande suivante pour générer un keystore (dans Windows) - Remplacez mot de passe par un mot de passe réel que vous souhaitez utiliser :
keytool -genkey -keyalg RSA -alias selfsigned -keystore keystore.jks -storepass password -valid 360 -keysize 2048
-
- L'étape 1b a créé un fichier keystore nommé : keystore.jks. Il s'agit d'un keystore Java qui contient mon nouveau certificat et les clés publiques et privées.
- Extrayez maintenant le certificat PEM du keystore qui peut être implémenté dans l'interface utilisateur Ariba pour l'authentification du point de terminaison. À partir de l'invite de commande, exécutez la commande suivante (remplacez mot de passe par le mot de passe réel défini à l'étape 1b) :
keytool -exportcert -alias selfsigned -keypass password -keystore keystore.jks -storepass password -rfc -file keytool_crt.pem
- Pour les besoins de cette solution, je vais faire référence à la configuration de la demande dans SoapUI. Dans Ariba, accédez à Gérer > Administration/Administration du système > Gestionnaire d'intégration > Configuration des points de terminaison > Nouveau.
- Collez le certificat X.509 codé à l'aide du codage en base64 Privacy Enhanced Mail (PEM) extrait à l'étape 1d, collez-le dans le fichier de certificat et enregistrez les modifications. La première ligne du certificat doit être le texte suivant :
-----DEBUT CERTIFICAT-----
La dernière ligne du certificat doit être le texte suivant :
-----CERTIFICAT DE FIN-----

- Accédez à Gérer > Administration/Administration du système > Gestionnaire d'intégration > Configuration de l'intégration > Sélectionnez le service Web souhaité, modifiez-le, assurez-vous qu'il est activé et à l'aide du point de terminaison créé à l'étape 3.
- Copier l'URL WSDL
- Dans SoapUI, créez un projet SoapUI et utilisez l'URL WSDL copiée depuis Ariba.
- Double-cliquez sur le projet.

- Cliquez sur l'onglet Keystores, puis sur l'icône Ajouter (ressemble à un signe +).
- Sélectionnez le fichier keystore créé à l'étape 1 (extension de fichier .jks) et saisissez le mot de passe du keystore. Une fois cette opération effectuée, le statut du keystore doit être OK.

- Cliquez sur l'onglet Configurations WS-Security sortantes et cliquez sur l'icône Ajouter (ressemble à un signe +).
- Cliquez sur l'icône Ajouter dans le volet inférieur pour ajouter le type de sécurité. Sélectionnez "Signature".
- Sélectionnez votre keystore et votre alias dans la liste déroulante et saisissez le mot de passe du keystore. Définissez le type d'identificateur clé comme "Nom de l'émetteur et numéro de série". Une fois configurée, la configuration se présentera comme suit :

- Ouvrez la demande dans SoapUI en double-cliquant dessus :

- Dans la demande, cliquez sur l'onglet "Aut". Définissez le WSS sortant sur le nom de vos "Configurations WS-Security sortantes" créées aux étapes 10-12.

- Vous pouvez maintenant exécuter la demande à partir de SoapUI. Vous devriez voir une réponse réussie.
Sortie du service Web Ariba vers le middleware :
- Assurez-vous que l'étape 1 a été exécutée à partir des étapes "Entrée vers service Web Ariba".
-
Dans Ariba, accédez à Gérer > Administration/Administration du système > Gestionnaire d'intégration > Configuration des points de terminaison > Nouveau > sélectionnez le type "Sortant".
Pour "URL", indiquez le point de terminaison. Il s'agit de l'emplacement où Ariba envoie la demande SOAP. Ariba recommande d'utiliser https, mais http fonctionnera également :
Exemple :
https://<domain>:<port>/WSOutbound
- Définir "Signer avec une clé privée Ariba" sur Oui et enregistrer le point de terminaison
- Accédez à Gérer > Administration/Administration du système > Gestionnaire d'intégration > Configuration de l'intégration > Sélectionnez le service Web souhaité, modifiez-le, assurez-vous qu'il est activé et à l'aide du point de terminaison créé à l'étape 2. Définissez également l'URL (doit être identique à l'URL du point d'extrémité, mais peut comporter des paramètres supplémentaires dans l'URL).
- Ouvrez l'URL WSDL et copiez l'URL dans le navigateur.
- Dans SoapUI, créez un projet SoapUI et utilisez l'URL WSDL copiée depuis Ariba.
- Assurez-vous que la création de MockService est contrôlée.
- Dans l'écran suivant, renseignez les données relatives au port et au chemin d'accès.
- Double-cliquez sur le projet que vous venez de créer.
- Cliquez sur l'onglet Keystores, puis sur l'icône Ajouter (ressemble à un signe +).
- Sélectionnez le fichier keystore créé à l'étape 1 du service Web Entrée vers Ariba (extension de fichier .jks) et saisissez le mot de passe du keystore. Une fois cette opération effectuée, le statut du keystore doit être OK.
- Cliquez sur l'onglet Configurations WS-Security entrantes et cliquez sur l'icône Ajouter (symbole +).
- Donnez un nom à l'entrée et sélectionnez la valeur keystore pour "Decrypt Keystore" et "Signature Keystore" et saisissez le mot de passe du keystore.
- Cliquez sur le MockService dans le projet Soap.
- Sous Propriétés MockService, définissez "WSS entrant" sur le nom des "configurations WS-Security entrantes" configurées à l'étape 13.
- Double-cliquez sur la réponse et saisissez manuellement des valeurs pour obtenir le résultat souhaité (réussite ou erreur). Il s'agit de la réponse envoyée à Ariba lorsque la demande arrive dans SoapUI.
- Désormais, vous pouvez générer des données dans l'application Ariba qui utilise le service Web prévu pour envoyer des données à votre SoapUI.
Pour en savoir plus sur la génération d'un keystore à l'aide des étapes mentionnées, voir :
http://www.john-james-andersen.com/blog/service-now/tutorial-soap-into-servicenow-via-x509-ws-security.html
Pour en savoir plus sur la configuration de WS-Security dans SoapUI, voir :
http://www.soapui.org/SOAP-and-WSDL/applying-ws-security.html
Achats
Contrats stratégiques
Sourcing stratégique
Supplier Information and Performance Management