• Dernière modification le: 13 April 2020

FAQ Coupa SAML

Découvrez ces questions fréquemment posées sur les connexions Coupa SSO.

Comment configurer SAML avec Coupa ?

Pour démarrer la configuration, veuillez lire cette FAQ et compléter l'étape 1 dans Configuration Setup. Fournissez les exigences de contact de mise en œuvre de votre Coupa énumérées à l'étape 2. Coupa Engineer aidera à configurer la connexion IdP à la fin de Coupa, la configuration n'est pas complètement en libre-service. L'administrateur de Coupa a la liberté de désactiver SAML, de modifier l'URL de connexion, l'URL de déconnexion et l'URL de temporisation.

Quel protocole SAML Coupa prend-il en charge ?

SAML V2.0

Où sont les spécifications de SAML V2.0 ?

http://saml.xml.org/saml-specifications

Comment puis-je valider la réponse SAML xml ?

Veuillez vérifier le xml par rapport à http://docs.oasis-open.org/security/saml/v2.0/saml-schema-protocol-2.0.xsd

    $ xmllint --noout --schema saml-schema-protocol-2.0.xsd saml_response.xml

Comment décoder la réponse SAML ?

Un décodeur en ligne est à : https://rnd.feide.no/simplesaml/modu...ebug/debug.php

Comment suivre et afficher les réponses SAML ?

L'add-on Firefox saml-tracer suit le flux HTTPS, décode et analyse la réponse SAML https://addons.mozilla.org/en-US/firefox/addon/saml-tracer/

Qu'est-ce que l'URL de connexion ?

L'URL de connexion sous le contrôle > de sécurité de l'installation est simplement une redirection HTTP 302.

Pour IdP Initiated SSO, entrez l'URL de connexion de l'écran de connexion IdP. L'application Coupa redirigera l'utilisateur vers la page de connexion hébergée par IdP pour authentifier ses utilisateurs. Les utilisateurs ne verront pas la page de connexion Coupa.

Pour l'authentification unique initiée par SP, vous pouvez créer l'URL à condition de connaître l'ID d'entité à IdP. à rediriger pour démarrer l'initiation de SP.

Pour le test/la mise en scène

https://sso-stg1.coupahost.com/sp/startSSO.ping?PartnerIdpId= <stage_IdP_entityid>&TARGET=https ://{your-test_site}.coupahost.com/sessions/saml_post

Pour la production

https://sso-prd1.coupahost.com/sp/startSSO.ping?PartnerIdpId= <prod_IdP_entityid>&TARGET=https ://{votre_site}.coupahost.com/sessions/saml_post

Pourquoi Coupa a-t-il besoin d'une URL de déconnexion ?

Lorsque les utilisateurs se déconnectent de l'application Coupa, Coupa efface la session utilisateur et redirige les utilisateurs vers l'URL de déconnexion configurée sous Configuration - Contrôle de> sécurité. Sa simple redirection et non la mise en œuvre de SLO. Il n'est pas nécessaire que votre utilisateur se déconnecte de l'IdP. L'URL de déconnexion peut être un site interne ou une page de destination pour vos utilisateurs une fois qu'ils ont terminé d'utiliser l'application Coupa.

Qu'est-ce que l'URL de temporisation et comment fonctionne la temporisation avec la mise en œuvre SAML ?

L'application Coupa a un délai d'expiration de session défini sous Système - Contrôle de> sécurité. Après le délai d'expiration de la session, Coupa redirigera vers l'URL de délai d'expiration (identique à l'URL de connexion), qui lancera IdP Initiated ou SP Initiated SSO en fonction de l'URL. Dans la plupart des cas, l'URL d'expiration est la même que l'URL de connexion. Les utilisateurs verront la page de connexion basée sur l'expiration de la session Coupa et le délai d'expiration de l'IdP défini pour les utilisateurs.

Quelles informations Coupa utilise-t-elle pour identifier l'utilisateur IdP ?

Coupa utilise la valeur NameID de la réponse SAML pour rechercher l'utilisateur Coupa correspondant. L '« ID d'authentification unique » doit être fourni lors de la création de l'utilisateur pour que la connexion SAML réussisse. L'ID d'authentification unique peut être configuré en modifiant l'utilisateur dans l'interface utilisateur ou l'intégration utilisateur à l'aide de l'API Coupa.

Y a-t-il un moyen d'accéder à Coupa et de contourner SAML ?

Coupa fournit cette interface de support pour contourner le processus d'authentification SSO. L'URL est https ://{your-site}.coupahost.com/sessions/support_loginCeci est uniquement destiné aux administrateurs, car les utilisateurs normaux peuvent ne pas avoir de mot de passe Coupa défini dans Coupa lors de leur création. Cela les empêche de se connecter avec autre chose que votre SSO. Vous pouvez éventuellement créer un utilisateur avec un mot de passe Coupa pour vous connecter via cette interface d'assistance. Ceci est utile pour les utilisateurs qui ne font pas partie de l'IdP mais qui doivent quand même accéder à Coupa.

Quand Coupa a-t-il besoin d'un RelayState ?

RelayState est obligatoire pour l'authentification unique initiée par IdP et n'est pas requis pour l'authentification unique initiée par SP. RelayState est requis par le fournisseur de services pour identifier l'instance Coupa du client. RelayState peut être passé en tant que QueryString ou variable POST séparée le long de SAMLResponse.

Cela se traduira par le suffixe suivant après l'URL ACS :/sp/ACS.saml2?RelayState=https ://<coupa-instance-domain-name>/sessions/saml_post.

Un moyen simple consiste à ajouter RelayState en tant que QueryString à l'URL AssertionConsumerService que vous trouvez dans les métadonnées de stade ou de production xml

Quel est le flux de travail pour l'authentification unique initiée par IdP et l'authentification unique initiée par SP ?

http://documentation.pingidentity.com/display/PF/IdP-Initiated+SSO--POST

http://documentation.pingidentity.com/display/PF/SP-Initiated+SSO--POST-POST

Comment devons-nous configurer SAML pour Stage et Production Coupa Instance ?

L'URL du point de terminaison d'assertion (AssertionConsumerService) pour Coupa Stage est https://sso-stg1.coupahost.com/sp/ACS.saml2 et pour la production Coupa est https://sso-prd1.coupahost.com/sp/ACS.saml2. Pour que SAML fonctionne à la fois sur scène et en production, il doit y avoir deux connexions, l'une pour la scène et l'autre pour la production. Si vous n'avez pas Stage et que vous n'avez que l'IdP de production, vous pouvez toujours créer deux connexions différentes pour Coupa Stage et l'instance Coupa Production. RelayState sera différent pour la connexion Stage et Production.

Pouvons-nous faire du provisioning utilisateur avec SAML ?

La configuration SAML actuelle de Coupa est uniquement destinée à l'authentification et non à la fourniture d'utilisateurs dans Coupa. L'autorisation se fait via le rôle d'utilisateur Coupa. Le rôle SAML consiste à authentifier l'utilisateur.

Avec quels systèmes IdP Coupa s'est-il intégré ?

Tout système IdP qui implémente SAML 2.0. ADFS 2.0, PingFederate, Novell Access Manager, Oracle Access Manager, Tivoli access manager, projet open source comme Shibboleth, solutions sur mesure, etc. Nous ne fournissons actuellement pas d'exemple de code IdP, ils sont disponibles en ligne et à partir de projets open source.

Je recherche des exemples de métadonnées IdP que les clients fournissent à Coupa.

Voir le Test_IDP_Metadata.xml ci-joint.

Je recherche un exemple de réponse AuthnRequest et SAML.

Voir le sample_AuthnRequest_and_SAML_response.xml ci-joint.

Voir "Attribut InResponseTo non valide (Hg3Av..............FG) - les réponses non sollicitées ne peuvent pas avoir un InResponseTo." erreur

Trois raisons de telles erreurs : 

  1. La réponse SAML du côté IdP utilise le même AuthnToken, rejouant le SAML
  2. Dupliquer le MESSAGE SAML à partir de la même page de connexion, par exemple deux MESSAGES avec la même réponse SAML.
  3. Configuré PingFederate du côté IdP avec RelayState dans l'URL ACS et en utilisant SP-Initiation avec Coupa.

1 et 2 peuvent être détectés par n'importe quel plugin Firefox et saml_tracer ou n'importe quel outil de suivi HTTP. 3 est valide du côté IdP en utilisant PingFederate, ils ne doivent pas définir RelayState pour la configuration SP-Init avec Coupa.

Recueillir la trace SAML pour résoudre les problèmes liés à l'authentification unique

Du point de vue du support, nous devons parfois collecter des données liées à l'échec de l'authentification SAML / SSO.

Il existe 2 outils basés sur le navigateur que nous pouvons utiliser pour cela, qui sont assez faciles :

Firefox

Traceur SAML : https://addons.mozilla.org/en-us/firefox/addon/saml-tracer/

Une fois installé, il ressemblera à la capture d'écran suivante et devra être ouvert lors de la connexion SSO :

Les données que vous devez collecter se trouvent sous la forme d'une PUBLICATION*, sous l'onglet SAML :

Chrome

Traceur SAML : https://chrome.google.com/webstore/detail/saml-chrome-panel/paijfdbeoenhembfhkhllainmocckace?hl=en

Une fois installé, cela ajoutera un onglet sur votre outil de développement dans Chrome, et encore une fois, vous trouverez un MESSAGE* et vous devrez consulter l'onglet SAML :

 

* les appels POST sont effectués vers : https://devsso35.coupahost.com
pour Sandox et pour l'environnement de développement https://prdsso40.coupahost.com
pour les instances de production

 

Articles associés


API Coupa Core

Notre API RESTful fournit un accès fiable pour lire, modifier ou intégrer vos données à la plateforme Coupa.

Démarrez avec l'API

Informations générales sur l'utilisation de l'API Coupa et quand vous devez envisager d'utiliser CSV.

Transition vers OAuth 2.0 et OIDC

Coupa désapprouve les API Keys héritées et nécessite l'utilisation d'OAuth 2.0 / OIDC. À partir de R34, aucune nouvelle clé API ne sera émise et les clés API ne seront plus prises en charge avec R35.

Ressources

Nous avons organisé nos points de terminaison API par type d'objet : données de référence, données transactionnelles et ressources partagées.