Foire aux questions KB0394293
E-mail
É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.
Question

Étapes de configuration de l'authentification basée sur un certificat (WS-Security) pour les services Web

Réponse

Entrée dans le service Web Ariba :

  1. Utilisez un keystore avec un certificat X.509 encodé à l'aide du codage Privacy Enhanced Mail (PEM) en base64. Si vous n'en avez pas de auprès 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 :
    1. Ouvrez votre invite de commande et remplacez le répertoire par le répertoire bin d'installation Java de votre ordinateur.
    2. Exécutez la commande suivante pour générer un keystore (sous Windows) - Remplacez le 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 -validité 360 -keysize 2048

    1. 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.
    2. 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 selfsign -keypass password -keystore keystore.jks -storepass password -rfc -file keytool_crt.pem

  1. Pour les besoins de cette solution, je vais faire référence à la configuration de la requête dans SoapUI. Dans Ariba, accédez à Gérer > Administration/Administration du système > Gestionnaire d'intégration > Configuration des points de terminaison > Nouveau.
  2. Collez le certificat X.509 codé à l'aide du codage Privacy Enhanced Mail (PEM) en base64 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 :
    -----CERTIFICAT DE DEBUT-----
    La dernière ligne du certificat doit être le texte suivant :
    -----CERTIFICAT FINAL-----

  1. 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.
  2. Copier l'URL WSDL
  3. Dans SoapUI, créez un projet SoapUI et utilisez l'URL WSDL copiée à partir d'Ariba.
  4. Double-cliquez sur le projet.

  1. Cliquez sur l'onglet Keystores, puis sur l'icône Ajouter (ressemble à un signe +).
  2. 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.

  1. Cliquez sur l'onglet Configurations sortantes WS-Security et cliquez sur l'icône Ajouter (le signe +).
  2. Cliquez sur l'icône Ajouter dans le volet inférieur pour ajouter le type de sécurité. Sélectionnez "Signature".
  3. 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'identifiant de clé = "Nom de l'émetteur et numéro de série". Une fois configurée, la configuration ressemblera à ce qui suit :

  1. Ouvrez la requête dans SoapUI en double-cliquant dessus :

  1. Dans la requête, 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.

  1. 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 :

  1. Assurez-vous que l'étape 1 des étapes "Entrée dans le service Web Ariba" est terminée.
  2. 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 l'utilisation de https. Cependant, http fonctionnera également :

    Exemple :
    https://<domain>:<port>/WSOutbound

  3. Définir "Signer avec clé privée Ariba" sur Oui et enregistrer le point de terminaison
  4. 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 la même URL que l'URL du point d'extrémité, mais peut avoir des paramètres supplémentaires dans l'URL).
  5. Ouvrez l'URL WSDL et copiez l'URL dans le navigateur.
  6. Dans SoapUI, créez un projet SoapUI et utilisez l'URL WSDL copiée à partir d'Ariba.
  7. Assurez-vous que Créer MockService est coché.
  8. Dans l'écran suivant, renseignez les données relatives au port et au chemin.
  9. Double-cliquez sur le projet que vous venez de créer.
  10. Cliquez sur l'onglet Keystores, puis sur l'icône Ajouter (ressemble à un signe +).
  11. Sélectionnez le fichier keystore créé à l'étape 1 du service Web Entrée dans 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.
  12. Cliquez sur l'onglet Configurations WS-Security entrantes et cliquez sur l'icône Ajouter (le signe +).
  13. Donnez un nom à l'entrée et sélectionnez la valeur keystore pour "Decrypt Keystore" et "Signature Keystore", puis saisissez le mot de passe keystore.
  14. Cliquez sur le MockService dans le cadre du projet Soap
  15. Sous Propriétés MockService, définissez "WSS entrant" sur le nom des "Configurations WS-Security entrantes" configurées à l'étape 13.
  16. Double-cliquez sur Réponse et saisissez manuellement des valeurs pour que la réponse corresponde au résultat souhaité (réussite ou erreur). Il s'agit de la réponse envoyée à Ariba lorsque la demande arrive dans SoapUI.
  17. 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.
Informations supplémentaires

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 plus d'informations sur la configuration spécifique de WS-Security dans SoapUI, voir :

http://www.soapui.org/SOAP-and-WSDL/applying-ws-security.html

Étapes de configuration de l'authentification basée sur un certificat (WS-Security) pour les services Web à l'aide de SoapUI.txt6,75 Ko

S'applique à

Achats
Contrats stratégiques
Sourcing stratégique
Supplier Information and Performance Management

Conditions d'utilisation  |  Copyright  |  Informations sur la sécurité  |  Confidentialité