SSIS Components for SAP Concur

Build 23.0.8839

接続の確立

Visual Studio 2022 でSSIS を有効化

Visual Studio 2022 を使用している場合、SSIS を使用するにはSQL Server Integration Services プロジェクト拡張機能をインストールする必要があります。

  1. 拡張機能 -> 拡張機能の管理に移動します。
  2. 拡張機能の管理ウィンドウの検索ボックスで"SQL Server Integration Services Projects 2022" を検索し、リストから拡張機能を選択します。
  3. ダウンロードをクリックします。
  4. Visual Studio を終了し、ダウンロードしたMicrosoft.DataTools.IntegrationServices.exe インストーラーを実行します。デフォルト設定でインストーラーを進めてください。
  5. Visual Studio を開きます。これで、"Integration Services Project" プロジェクトテンプレートが利用可能になるはずです。

SAP Concur 接続マネージャーの追加

新しい接続マネージャーを以下のように作成します。

  1. "Integration Services Project" テンプレートを使用してVisual Studio プロジェクトを作成します。
  2. 接続マネージャーウィンドウ内で右クリックし、メニューから新しい接続を選択します。
  3. 説明カラムでCData SAP Concur Connection Manager を選択し、追加...をクリックします。
  4. 次のセクションで説明するように、本製品 を設定します。

または、既存のプロジェクトがあり、CData SAP Concur Source またはCData SAP Concur Destination がある場合:

  1. データフローでCData SAP Concur Source またはDestination コンポーネントを右クリックします。
  2. 編集...を選択し、編集ウィンドウを開きます。
  3. 接続マネージャー:の横にある新規作成...ボタンをクリックします。ドロップダウンのセレクターを使用して接続マネージャーを作成します。
  4. 次のセクションで説明するように、本製品 を設定します。

SAP Concur への認証

SAP Concur はOAuth 認証のみサポートします。この認証を有効にするには、すべてのOAuth フローでAuthSchemeOAuth に設定し、カスタムOAuth アプリケーションを作成する必要があります。

デスクトップアプリケーション

カスタムOAuth アプリケーションの資格情報を使用して認証するには、OAuth アクセストークンを取得し、更新する必要があります。これらを設定すると、接続の準備が整います。

OAuth アクセストークンの取得およびリフレッシュ:

  • InitiateOAuthGETANDREFRESHOAuthAccessToken を自動的に取得およびリフレッシュするために使用します。
  • OAuthClientId:アプリケーションの登録時に割り当てられたクライアントId。
  • OAuthClientSecret:アプリケーションの登録時に割り当てられたクライアントシークレット。
  • CallbackURL:アプリケーションの登録時に定義されたリダイレクトURI。

接続すると、本製品 はデフォルトブラウザでSAP Concur のOAuth エンドポイントを開きます。ログインして、アプリケーションにアクセス許可を与えます。

アプリケーションにアクセス許可を与えると、本製品 はOAuth プロセスを完了します。

  1. 本製品 はSAP Concur からアクセストークンを取得し、それを使ってデータをリクエストします。
  2. OAuth 値はOAuthSettingsLocation で指定されたパスに保存されます。これらの値は接続間で永続化されます。

アクセストークンの期限が切れたときは、本製品 は自動でアクセストークンをリフレッシュします。

Note: OAuth グラント種別と、デスクトップクライアントアプリケーションがOAuth2 エンドポイントを呼び出してトークンを取得する方法については、 この章で後述する「デスクトップ認証グラント種別」を参照してください。

ヘッドレスマシン

ヘッドレスマシンに置かれているリソースにログインする必要がある場合は、インターネットブラウザに対応した別の端末で認証する必要があります。 以下のいずれかの方法で行います。

  • オプション1:OAuthVerifier 値を取得します。
  • オプション2:インターネットブラウザに対応したマシンに本製品 をインストールし、通常のブラウザベースのフローで認証した後でOAuth 認証値を転送します。

オプション1またはオプション2を実行後、ヘッドレスマシンからアクセストークンを自動的にリフレッシュするようにドライバーを設定します。

オプション1:Verifier code を取得および交換

Verifier code を取得するには、OAuth Authorization URL で認証する必要があります。以下の手順に従います。

  1. インターネットブラウザに対応したマシンから認証してOAuthVerifier 接続プロパティを取得します。

    次のプロパティを設定します。

    • InitiateOAuthOFF
    • OAuthClientId:アプリケーションの登録時に割り当てられたクライアントId。
    • OAuthClientSecret:アプリケーションの登録時に割り当てられたクライアントシークレット。

  2. GetOAuthAuthorizationURL ストアドプロシージャを呼び出します。ストアドプロシージャは、カスタムOAuth アプリケーションが登録されたときに構築されたCallbackURL を返します。 (カスタムOAuth アプリケーションの作成 を参照してください。)

    このURL をコピーして、新しいブラウザのタブに貼り付けます。

  3. ログインして、本製品 にアクセス許可を与えます。OAuth アプリケーションは、code というパラメータを付加したリダイレクトURI にリダイレクトします。このパラメータの値を控えておきます。OAuthVerifier 接続プロパティを設定するために、後で必要になります。

  4. OAuth verifier code をOAuth リフレッシュトークンおよびアクセストークンと交換します。ヘッドレスマシンでは、次の接続プロパティを設定してOAuth 認証値を取得します。

    • InitiateOAuthREFRESH
    • OAuthVerifier:控えておいたverifier code(リダイレクトURI のcode パラメータの値)。
    • OAuthSettingsLocation:暗号化されたOAuth 認証値を指定されたファイルに永続化。
    • OAuthClientId:カスタムOAuth アプリケーション設定のクライアントId。
    • OAuthClientSecret:カスタムOAuth アプリケーション設定のクライアントシークレット。

  5. 接続をテストしてOAuth 設定ファイルを生成します。

  6. 次のプロパティを再設定して、接続してください。

    • InitiateOAuthREFRESH
    • OAuthSettingsLocation:暗号化されたOAuth 認証値を含むファイル。アクセストークンの自動リフレッシュを有効にするには、このファイルが本製品 に読み書きのアクセス許可を与えることを確認してください。
    • OAuthClientId:アプリケーションの登録時に割り当てられたクライアントId。
    • OAuthClientSecret:アプリケーションの登録時に割り当てられたクライアントシークレット。

オプション2:OAuth 設定を転送

ヘッドレスマシンでの接続に先立ち、インターネットブラウザに対応したデバイスでドライバーとの接続をインストールし、作成する必要があります。上述の「デスクトップアプリケーション」の説明に従って、接続プロパティを設定します。

「デスクトップアプリケーション」の手順が完了すると、生成された認証値は、OAuthSettingsLocation で指定されたパスに暗号化されて書き込まれます。デフォルトのファイル名はOAuthSettings.txt です。

接続をテストしてOAuth 設定ファイルを生成し、OAuth 設定ファイルをヘッドレスマシンにコピーします。

ヘッドレスマシンでデータに接続するには、次の接続プロパティを設定します。

  • InitiateOAuthREFRESH
  • OAuthSettingsLocation:ブラウザでマシンからコピーしたOAuth 設定ファイルへのパス。アクセストークンの自動リフレッシュを有効にするために、このファイルが本製品 に読み書きのアクセス許可を与えることを確認してください。
  • OAuthClientId:カスタムOAuth アプリケーションの登録時に割り当てられたクライアントId。
  • OAuthClientSecret:カスタムOAuth アプリケーションの登録時に割り当てられたクライアントシークレット。

デスクトップ認証グラント種別

トークンを取得するには、クライアントアプリケーションは、必要な認証シナリオに応じ、さまざまなグラントを使用してOauth2 エンドポイントを呼び出す必要があります。CData のドライバーがサポートするシナリオは、CODE とPASSWORD グラント種別です。

CODE

CODE はデフォルトのOAuthGrantType です。前述の設定に加え、CODE グラント種別を使用するには、次の追加設定が必要です。

  • UseSandbox:実装サーバーを経由して認証している場合は、 これをTrue に設定します。
  • Region:他の資格情報とともに受信した地理位置情報のリージョン。利用可能な値は、EU(ヨーロッパ)、CN(中国)、およびUS(デフォルト)です。

PASSWORD

PASSWORD グラントは、ユーザーとアプリケーションの間に信頼関係がある場合に、デスクトップアプリケーションで使用することができます。

前述の設定に加え、PASSWORD グラント種別を使用するには、次の追加設定が必要です。

  • AuthSchemeOAuthPassword
  • Username:ユーザーネームまたはユーザーId。
  • Password:ユーザーのパスワード。
  • UseSandbox:実装サーバーを使用して認証している場合は、これをTrue に設定します。

Company-Level 認証

Company はSAP Concur プラットフォームの最上位プリンシパルです。アクセストークンとリフレッシュトークンは、ユーザーの場合と同じように、Company に代わって取得することができます。

カスタムOAuth アプリケーションの作成 の説明に従ってカスタムOAuth アプリケーションを作成したのち、Company Request Token を生成する必要があります。Company Request Token Tool が利用できる場合は、それを使うことができます。そうでない場合は、SAP Concur サポートチームに連絡して、Company Request Token を生成してもらう必要があります。

Company Request Token が正常に生成されると、リクエストトークンツールにCompany UUID とCompany Request Token が表示されます。これらの値は、後で使用するために保存しておきます。

Company-Level 認証を使用する場合、CODE グラント種別を使用するには、前述の設定に加えて次の追加設定が必要です。

  • AuthSchemeCompanyLevelAuth
  • CompanyId:会社固有の識別子。
  • CompanyRequestToken:生成されたCompany Request Token。
  • UseSandbox:実装サーバーを使用して認証している場合は、これをTrue に設定します。

SAP Concur ログインID 変数の使用

ログインID(ユーザーのログインID)は、OAuth 2.0 アクセストークンに関連付けられたユーザーアカウントが、以下のロールのいずれかを持つConcur アカウントを持っている場合に使用できます。
  • Web Services Administrator for Professional
  • Can Administer for Standard

ログインID をALL に設定すると、Login ID 引数をサポートするすべてのアカウントの情報が取得されます。

Copyright (c) 2024 CData Software, Inc. - All rights reserved.
Build 23.0.8839