• 最終編集日時: 19 August 2022

OAuth 2.0移行ガイド

はじめに

この記事では、APIキーからOAuth 2.0に移行するためにCoupaでOAuthクライアントを構成するために完了する必要がある手順について説明します。

メモ

APIキーのサンセットおよび移行は、顧客が作成したCoupaコアプラットフォームへのAPI統合にのみ影響し、財務、CSO、サプライチェーンの設計および企画などの アプリケーションには影響しません。

Coupaによって作成されたAPIキーを取り消すべきではありません。これらのキーは個別に移行され、あなたからのアクションは必要ありません。

ワクチンの仕組み

メモ

 すべてのCoupaインスタンス(本番、テスト、開発、ステージなど)について、次の手順を実行してください。

1.CoupaでのAPIキーの確認

  1. 自分のCoupaインスタンスにログインします。
  2. [設定] > [APIキー]に移動します。
  3. すべてのキーを確認します。

2.OAuthクライアントの作成とスコープの割り当て

  1. [設定] > [Oauth 2/OpenID接続クライアント(/ oauth 2/clients)]に移動します。
  2. [作成]をクリックし、[グラントタイプ]ドロップダウンで[クライアント資格情報]を選択します。
  3. フィールドに記入し、クライアントが必要とするスコープ(アクセス許可)を選択します。クライアントにすべてのAPIエンドポイントと操作へのアクセスを許可する場合は、すべてのスコープをそのクライアントに追加する必要があることに注意してください。 
    クライアントの作成画面。
  4. クライアントを保存すると、クライアントの資格情報が取得されます。識別子シークレットOidcスコープ
    保存後にOathクライアント情報が返されました。

3.資格情報テスト( PostmanのようなHTTPクライアントを使用した接続テスト)

  1. ターミナル(リンク)を使用して、コマンドラインを使用してCurl POST:
    curl - X POST - H "Content - Type: application/x - www - form - urlencoded" - d "client_id<CLIENT_ID> =& grant_type = client_credentials&scope<SPACE_SEPARATED_LIST_OF_SCOPES> =& client_secret<CLIENT_SECRET> =" https :///oauth 2<INSTANCE_DOMAIN>/tokenを実行します
    Curl POSTの例
  2. Postmanや他のRESTクライアントのようなHTTPクライアントを使用して、Coupa APIを使用するようにOAuth 2/OIDCクライアント接続を構成します。
  3. 投稿を選択します。
  4. 上記でクライアントを定義したインスタンス名にURLを設定します。例: https :// {your_instance_address}/oauth 2/token
  5. Content - Type = application/x - www - form - urlencodedのヘッダーキー値を設定します
    Content - Type POSTの例
  6. 投稿本文では、次の値を設定します。
    1. クライアントID = <Your Client Identifier value>
    2. grant_type = client_credentials
    3. 範囲 = <Copy/paste all the scopes that you selected in Client credentials setup without the comma.>
    4. client_secret = < Coupaクライアントシークレットの値をコピー/貼り付け>
      POST本文設定。
  7. 送信をクリックします。POST応答には、定義されたスコープ内のAPI呼び出しを次の24時間( 86,399秒でexpires_)で認証するために生成されたaccess_tokenがあります。 
    投稿応答の例。

  8. 応答本文からaccess_token値をコピーし、このクライアント接続に定義したスコープ内でCoupa API呼び出しの承認ヘッダーのトークン値として使用します。 

  9. GET、POST、またはPUTなどのAPI呼び出しを行うための新しいタブを作成し、リクエストビルダーのAuthorization部分で‘TYPE‘ = OAuth 2.0を定義します

  10. [トークン]フィールド値としてaccess_tokenを貼り付けます。
    トークンフィールド値の例。

  11. ヘッダーに移動し、[Accept]キーフィールドにapplication/xmlまたはapplication/jsonの値を入力します。呼び出しと使用しようとしているインターフェースに応じて、他の要求パラメータを設定および定義する必要があります。この例では、請求書APIへのGET API呼び出しを見ることができます。
    キーフィールドの例を受け入れます。

  12. 送信をクリックします。Authorizationヘッダーでそのaccess_tokenを設定すると、その接続に対して定義したクライアントスコープへのGET、PUT、またはPOST呼び出しを行うことができます。
    成功した要求の例。

4.トークン作成のためのミドルウェアスクリプト/フローを構築し、20時間ごとに更新する

ミドルウェアによっては、構成が異なる場合があります。ただし、Coupa APIキーを使用するすべてのインテグレーションがOAuthトークンを使用するように更新されていることを確認することが重要です。このトークンの生成と更新のために、これが20時間ごとに更新されるように、新しいスクリプト/フローを作成する必要があるかもしれません。セットアップが完了すると、ミドルウェアのほとんどのアダプタはトークンを自動的に更新します。

警告

クライアントのスコープを変更すると、トークン生成要求で渡されるため、トークン生成スクリプト/アダプタに影響を与えます。

フローの例。

OAuth2.0アダプターのセットアップ方法については、以下のさまざまなミドルウェアのドキュメントリンクを参照してください。

5.インテグレーションを更新して、スクリプトによって生成された新しいトークンを使用する

既存のインテグレーションはすべて、OAuth接続を採用し、新しいスクリプト/フローによって生成されたトークンを使用する必要があります。これは、例えば、マスターデータ統合が最初に移行され、後の段階でトランザクションデータ統合が続く段階で行うことができる。

6.古いAPIキーを無効にする

移行プロセスの一環として、OAuth2.0への移行後に既存のAPIキーが使用されなくなるように、既存のAPIキーを無効にしてください。

  1. [設定] > [APIキー]に移動します。
  2. 古いAPIキーを編集します。
  3. [APIキーの取消]をクリックします。

7.Coupa Success Portalで利用可能なリソースと情報

Coupaウェビナー

詳細については、次のリソースを使用することもできます。

関連アイテム


Coupa Core API

CoupaのRESTful APIは、お客様のデータをCoupaプラットフォームで読み取り、編集し、統合するための堅牢なアクセスを提供します。

APIの開始

Coupa APIの使用に関する一般情報、およびCSVの使用を検討するタイミング。

OAuth 2.0およびOIDCへの移行

Coupaは従来のAPIキーを廃止し、OAuth 2.0 / OIDCの使用を必要としています。R34以降、新しいAPIキーは発行されず、R35ではAPIキーはサポートされなくなります。

リソース

参照データ、トランザクションデータ、共有リソースなど、オブジェクトのタイプ別にAPIエンドポイントを整理しました。