Coupa SAMLに関するよくある質問

Coupa SSO接続に関するこれらのよくある質問を確認してください。

CoupaでSAMLを設定する方法

構成を開始するには、このFAQを読み、構成設定のステップ1を完了してください。ステップ2に記載されているCoupaの導入担当者の要件を入力します。Coupaエンジニアは、CoupaエンドでIdP接続のセットアップを支援します。セットアップは完全にセルフサービスではありません。Coupa内の管理者は、SAMLを無効にしたり、ログインURLを変更したり、ログアウトURLやタイムアウトURLを自由に設定できます。

CoupaはどのSAMLプロトコルをサポートしていますか?

SAML V2.0

SAML V2.0仕様はどこにありますか?

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

SAML応答xmlを検証するにはどうすればよいですか。

Http://docs.oasis-open.org/security/saml/v2.0/saml-schema-protocol-2.0.xsdに対してXMLを検証してください

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

SAML応答をデコードする方法は?

1つのオンラインデコーダーはhttps://rnd.feide.no/simplesaml/modu... ebug/debug.phpにあります

SAML応答を追跡して表示する方法

 Firefoxアドオンsaml - tracerは、HTTPSフローを追跡し、SAML応答をデコードおよび解析します https://addons.mozilla.org/en-US/firefox/addon/saml-tracer/

ログインURLとは?

[セットアップ] > [セキュリティ制御]の下のログインURLは、単にHTTP 302リダイレクトです。

IdP開始SSOの場合、IdPログイン画面のログインURLを入力します。Coupaアプリケーションは、ユーザーをIdPホスト型ログインページにリダイレクトして、ユーザーを認証します。ユーザーにはCoupaサインインページは表示されません。

SP - Initiated SSOの場合、IdP.のEntityIDを知っていれば、SP Initiationを開始するためにリダイレクトするURLを構築できます。

テスト/ステージング用

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

生産用

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

CoupaにログアウトURLが必要な理由

ユーザーがCoupaアプリケーションからログアウトすると、Coupaはユーザーセッションをクリアし、セットアップ->セキュリティコントロールで設定されたログアウトURLにユーザーをリダイレクトします。SLOの実装ではなく、単純なリダイレクトです。ユーザーがIdPからサインアウトする必要はありません。ログアウトURLは、Coupaアプリケーションを使用して完了すると、ユーザーの内部サイトまたは任意のランディングページにすることができます。

タイムアウトURLとは何ですか?タイムアウトはSAML実装でどのように機能しますか?

Coupaアプリケーションには、システム->セキュリティ制御で設定されたセッション期限タイムアウトがあります。セッションタイムアウト後、CoupaはタイムアウトURL (ログインURLと同じ)にリダイレクトされ、URLに基づいてIdP開始またはSP開始のSSOが開始されます。ほとんどの場合、タイムアウトURLはログインURLと同じです。ユーザーには、Coupaセッションの有効期限とユーザーに設定されたIdPタイムアウトに基づいたログインページが表示されます。

CoupaはIdPユーザーを識別するためにどのような情報を使用しますか?

Coupaは、対応するCoupaユーザーを検索するために、SAML応答のNameID値を使用します。SAMLログインを成功させるには、ユーザー作成時に「シングルサインオンID」を指定する必要があります。シングルサインオンIDは、Coupa APIを使用してユーザーインターフェイスまたはユーザー統合でユーザーを編集することで構成できます。

CoupaにアクセスしてSAMLをバイパスする方法はありますか?

Coupaは、SSO認証プロセスをバイパスするためのこのサポートインターフェイスを提供しています。URLはhttps ://{ your - site }.coupahost.com/sessions/support_loginですこれは、通常のユーザーがCoupaで作成されたときにCoupaパスワードが設定されていない可能性があるため、管理者のみを対象としています。これにより、SSO以外でログインすることができなくなります。このサポートインターフェイスを通じてログインするために、Coupaパスワードを使用してユーザーを作成することもできます。これは、IdPの一部ではありませんが、Coupaにアクセスする必要があるユーザーに役立ちます。

CoupaにRelayStateが必要なのはいつですか?

RelayStateは、IdP開始SSOには必須であり、SP開始SSOには必要ありません。RelayStateは、サービスプロバイダーが顧客のCoupaインスタンスを識別するために必要です。RelayStateは、QueryStringまたはSAMLResponseに沿って個別のPOST変数として渡すことができます。

これにより、ACS URLの後ろに/sp/ACS.saml2?RelayState=https :/// sessions<coupa-instance-domain-name>/saml_postというサフィックスが生成されます

1つの簡単な方法は、RelayStateをQueryStringとして、ステージまたは本番メタデータxmlで見つけたAssertionConsumerService URLに追加することです。 

IdP - Initiated SSOおよびSP - Initiated SSOのワークフローは何ですか。

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

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

ステージおよび本番CoupaインスタンスのSAMLをどのように設定する必要がありますか?

Coupa StageのアサーションエンドポイントURL ( AssertionConsumerService )はhttps://sso-stg1.coupahost.com/sp/ACS.saml2で、Coupaプロダクションの場合はhttps://sso-prd1.coupahost.com/sp/ACS.saml2です。SAMLをステージとプロダクションの両方で動作させるには、2つの接続が必要です。1つはステージ用、もう1つはプロダクション用です。ステージがなく、本番IdPのみがある場合でも、Coupa StageとCoupa Productionインスタンスに2つの異なる接続を作成できます。RelayStateは、ステージとプロダクションの接続で異なります。

SAMLを使用してユーザーのプロビジョニングを行うことはできますか?

現在のCoupa SAML設定は、Coupa内でのユーザーのプロビジョニングではなく、認証のみを目的としています。承認は、Coupaユーザーロールを介して行われます。SAMLの役割はユーザーを認証することです。

CoupaはどのIdPシステムと統合されていますか?

SAML 2.0を実装するすべてのIdPシステム。ADFS 2.0、PingFederate、Novell Access Manager、Oracle Access Manager、Tivoli Access Manager、Shibbolethなどのオープンソースプロジェクト、カスタムビルドソリューションなど現在、IdPサンプルコードは提供されていません。オンラインおよびオープンソースプロジェクトから入手できます。

顧客がCoupaに提供するIdPメタデータのサンプルを探しています。

添付のTest_IDP_Metadata.xmlを参照してください

AuthnRequestとSAML応答のサンプルを探しています。

添付のsample_AuthnRequest_and_SAML_response.xmlを参照してください

「Invalid InResponseTo attribute (Hg 3 Av............ FG) - unsolicited response cannot have an InResponseTo .」というエラーが表示されます。

このようなエラーの3つの理由: 

  1. IdP側からのSAML応答は同じAuthnTokenを使用しており、SAMLを再生しています
  2. 同じログインページからSAML投稿を複製します。たとえば、同じSAML応答を持つ2つの投稿です。
  3. ACS URLでRelayStateを使用し、CoupaでSP - Initiationを使用してIdP側でPingFederateを構成しました。

1と2は、Firefoxとsaml_tracerプラグイン、または任意のHTTPトラッキングツールを使用して検出できます。3は、PingFederateを使用しているIdP側で有効です。Coupaを使用してSP - Initセットアップを行うためにRelayStateを設定しないでください。

SAMLトレースを収集して、SSO関連の問題をトラブルシューティングします

サポートの観点から、SAML/SSO認証の失敗に関連するデータを収集する必要がある場合があります。

このために使用できるブラウザベースのツールは2つあり、簡単です。

Firefox

SAMLトレーサー: https://addons.mozilla.org/en-us/firefox/addon/saml-tracer/

インストールされると、次のスクリーンショットのように表示され、SSO接続中に開く必要があります。

収集する必要のあるデータは、SAMLタブのPOST *として見つかります。

Chrome

SAMLトレーサー: https://chrome.google.com/webstore/detail/saml-chrome-panel/paijfdbeoenhembfhkhllainmocckace?hl=en

これがインストールされると、Chromeの開発者ツールにタブが追加され、再び投稿*が表示され、SAMLタブを見る必要があります。

 

* POSTコールは、Sandoxの場合は
https://devsso35.coupahost.com、本番インスタンスの場合はhttps://prdsso40.coupahost.com
に対して行われます。

 

関連アイテム


APIキーの非推奨に関するFAQ

16 August 2022

照会オプション

21 October 2016

クエリを使用して、必要なデータをすばやく特定して取得する方法をご覧ください。

特別措置とAPIメモ

21 October 2016

Coupa APIの使用方法に関する追加情報。

CoupaでのXMLとJSONの違い

16 December 2016