SSIS Components for Salesforce

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" プロジェクトテンプレートが利用可能になるはずです。

Salesforce 接続マネージャーの追加

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

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

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

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

Salesforce への接続

デフォルトでは、本製品 は本番環境に接続します。Salesforce sandbox アカウントを使用するには、UseSandboxtrue に設定します。ユーザー / パスワード認証を使用している場合は、User にsandbox のユーザー名を指定してください。

Salesforce への認証

ユーザー資格情報およびセキュリティトークン

AuthSchemeBasic に設定し、UserPassword をログイン資格情報に設定します。さらにSecurityToken を設定します。デフォルトではSecurityToken が必要ですが、Salesforce で信頼できるIP アドレスの範囲を設定することで、オプションにすることができます。

セキュリティトークンを無効にするには:

  1. Salesforce にログインして、[設定]セクションの[Quick Find]ボックスにNetwork Access を入力します。
  2. IP アドレスを信頼できるIP アドレスのリストに追加します。

セキュリティトークンを取得するには:

  1. Salesforce.com の[私の設定]->[個人用]->[私のセキュリティトークンのリセット]を開きます。
  2. [セキュリティトークンのリセット]をクリックします。トークンがE メールで送られます。
  3. SecurityToken 接続プロパティでセキュリティトークンを入力するか、Password に追加します。

OAuth

AuthScheme は、すべてのユーザーアカウントフローでOAuth に設定する必要があります。

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

CData は、OAuth デスクトップ認証を簡略化する埋め込みOAuth アプリケーションを提供します。代わりに、カスタムアプリケーションを作成することも可能です。カスタムアプリケーションの作成およびその理由については、カスタムOAuth アプリの作成 を参照してください。

認証に関する2つの方法の違いは、カスタムOAuth アプリケーションを使用する場合に、2つの接続プロパティを追加で設定する必要があることだけです。

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

  • InitiateOAuthGETANDREFRESH に設定。InitiateOAuth を使えば、繰り返しOAuth の交換を行ったり、手動でOAuthAccessToken を設定する必要はなくなります。
  • OAuthClientId:(カスタムアプリケーションのみ)アプリケーション設定のクライアントID に設定。
  • OAuthClientSecret:(カスタムアプリケーションのみ)アプリケーション設定のクライアントシークレットに設定。

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

  • コールバックURL からアクセストークンを取得します。
  • 古いトークンの期限が切れたときは、新しいアクセストークンを取得します。
  • OAuthSettingsLocation にOAuth 値を保存し、接続間で永続化します。

ヘッドレスマシン

ヘッドレスマシンのユーザーアカウントでOAuth を使用するようにドライバーを設定するには、インターネットブラウザに対応した別の端末で認証する必要があります。

  1. 以下のオプションから選択します。

    • オプション1:後述の「Verifier code を取得および交換」に従い、OAuthVerifier 値を取得します。
    • オプション2:ブラウザに対応したマシンに本製品 をインストールし、後述の「OAuth 設定を転送」の説明に従い、通常のブラウザベースのフローで認証後にOAuth 認証値を転送します。

  2. 次に、ヘッドレスマシンからアクセストークンを自動的にリフレッシュするように本製品 を設定します。

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

Verifier code を取得するには、OAuth Authorization URL で認証する必要があります。

インターネットブラウザに対応したマシンから認証してOAuthVerifier 接続プロパティを取得する方法は次のとおりです。

  1. 以下のオプションから選択します。

    • 埋め込みOAuth アプリケーションを使用する場合は、Salesforce OAuth endpoint をクリックし、ブラウザでエンドポイントを開きます。
    • カスタムOAuth アプリケーションを使用するには、以下のプロパティを設定し、認証URL を作成します。
      • InitiateOAuthOFF に設定。
      • OAuthClientId:アプリケーションの登録時に割り当てられたクライアントId に設定。
      • OAuthClientSecret:アプリケーションの登録時に割り当てられたクライアントシークレットに設定。
      次に、適切なCallbackURL を指定してGetOAuthAuthorizationURL ストアドプロシージャを呼び出します。ストアドプロシージャによって返されたURL をブラウザで開きます。

  2. ログインして、本製品 にアクセス許可を与えます。すると、verifier code を含むコールバックURL にリダイレクトされます。
  3. verifier code の値を保存します。後ほどこれをOAuthVerifier 接続プロパティに設定します。
次に、OAuth verifier code をOAuth リフレッシュトークンおよびアクセストークンに交換する必要があります。次のプロパティを設定します。

ヘッドレスマシンでは、次の接続プロパティを設定してOAuth 認証値を取得します。

  • InitiateOAuthREFRESH に設定。
  • OAuthVerifier:verifier code に設定。
  • OAuthClientId:(カスタムアプリのみ)カスタムOAuth アプリケーション設定のクライアントId に設定。
  • OAuthClientSecret:(カスタムアプリのみ)カスタムOAuth アプリケーション設定のクライアントシークレットに設定。
  • OAuthSettingsLocation:これを設定すると、暗号化されたOAuth 認証値が指定された場所に永続化されます。

OAuth 設定ファイルが生成されたら、以下のように接続プロパティをリセットする必要があります。

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

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

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

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

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

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

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

OAuth パスワードグラント

次の手順に従いパスワードグラントオプションを設定します。

  1. パスワードグラント種別で認証を行う場合は、AuthSchemeOAuthPassword に設定します。
  2. 上記のWeb またはデスクトップ認証セクションで指定されたすべてのプロパティを設定します。
  3. UserPassword をログイン資格情報に設定し、必要に応じてSecurityToken も設定します。

Note:セッションの設定 -> ログイン時のIP アドレスとセッションをロックするを有効にしている場合、本製品 の使用中にIP アドレスが変更されないことを確認してください。本製品 使用中にIP が変更された場合、Salesforce から"INVALID_SESSION_ID" エラーが返され、本製品 はデータを取得できなくなります。このエラーが表示された場合は、Salesforce 管理者にこの設定を無効にするよう依頼するか、本製品 を使用するインスタンスに固定IP を必ず設定してください。その後、接続をリセットして本製品 を使い続けます。

OAuthJWT 証明書

AuthSchemeOAuthJWT に設定します。

OAuthJWT

OAuthJWT コンシューマーキーを取得するには:

  1. Salesforce.com にログインします。
  2. [設定]で[クイック検索]ボックスにApps を入力し、リンクをクリックしてアプリを作成します。表示されたページの[接続アプリケーション]セクションで、[新規]をクリックします。
  3. ユーザーがアプリケーションにログイン認証をする際に表示されるアプリケーション名を入力します。連絡先E メールアドレスも入力します。
  4. [OAuth 設定の有効化]をクリックし、コールバックURL ボックスに値を入力します。この値は必要に応じて接続アプリケーションを作成する場合にのみ設定します。この種類の認証には、実際には必要ありません。 Callback URL は次の形式になります:
    http://localhost:8019/src/oauthCallback.rst
  5. [デジタル署名を使用]を有効にします。
  6. 証明書をアップロードします。
  7. アプリがユーザーに要求するアクセス許可の範囲を選択します。
  8. アプリケーション名をクリックしてアプリケーションの情報ページを開きます。OAuth コンシューマーキーが表示されます。

OAuth アプリケーション作成後、次の接続プロパティを設定します。

  • AuthScheme:OAuthJWT に設定。
  • InitiateOAuth:GETANDREFRESH に設定。
  • OAuthJWTCert:JWT 証明書ストアに設定。
  • OAuthJWTCertType:OAuthJWTCert で指定された証明書ストアのタイプに設定。
  • OAuthJWTCertPassword:JWT 証明書ストアのパスワードに設定。
  • OAuthJWTIssuer:OAuth クライアントID に設定。
  • OAuthJWTSubject:OAuth 接続アプリケーションで設定した許可されたユーザープロファイルのユーザー名(E メールアドレス)に設定。

Note: このフローではリフレッシュトークンは発行されません。

AzureAD

AuthSchemeAzureAD に設定します。 AzureAD に接続するには、次の接続プロパティを使用します。

  • SSOExchangeUrl:ID プロバイダーのSalesforce OAuth 2.0トークンエンドポイント。これは、Salesforce のアカウント設定で[管理者設定]->[セキュリティのコントロール]->[シングルサインオン設定]に移動し、目的の組織を選択することで確認できます。

この構成には、2つのAAD アプリケーションが必要であることに注意してください:シングルサインオンに使用される"Salesforce" アプリケーションと、"Salesforce" アプリケーションに対するuser_impersonation 権限を持つ別の"コネクタ" アプリケーションです。 OAuth 接続プロパティも指定する必要があります。

  • OAuthClientId:アプリ登録の概要セクションにリストされている、コネクタアプリケーションのアプリケーションId。
  • OAuthClientSecret:コネクタアプリケーションのクライアントシークレット値。新しいクライアントシークレットを作成すると、Azure AD にこれが表示されます。

以下のSSOProperties を使用して、AzureAD へ認証します。

  • Resource:アプリ登録の概要セクションにリストされている、Salesforce アプリケーションのアプリケーションId URI。ほとんどの場合、これはカスタムSalesforce ドメインのURL です。
  • AzureTenant:アプリケーションが登録されているAzure AD テナントのId。

次は接続文字列の例です。

AuthScheme=AzureAD;InitiateOAuth=GETANDREFRESH;OAuthClientId=3ea1c786-d527-4399-8c3b-2e3696ae4b48;OauthClientSecret=xxx;SSOProperties='Resource=https://example.my.salesforce.com;AzureTenant=6ee709df-9de0-4cdf-10e6b7a51d95';

Okta

AuthSchemeOkta に設定します。Okta に接続するには、次の接続プロパティを使用します。

  • User:Okta ユーザーに設定。
  • Password:ユーザーのOkta パスワードに設定。
  • SSOLoginURL:SSO プロバイダーが使用するログインURL に設定。
  • SSOExchangeUrl:ID プロバイダーのSalesforce OAuth 2.0トークンエンドポイント。これは、Salesforce のアカウント設定で[管理者設定]->[セキュリティのコントロール]->[シングルサインオン設定]に移動し、目的の組織を選択することで確認できます。
SSOProperties で、必要に応じて以下の入力パラメータを設定します。
  • APIToken(オプション):顧客がOkta org から作成したAPI Token に設定。Okta クライアントリクエストコンテキストをオーバーライドする、信頼されたアプリケーションまたはプロキシ経由でユーザーを認証する場合には、これを使用する必要があります。
  • MFAType(オプション):MFA フローを設定した場合にのみ設定。現時点では、次のタイプのみをサポートしています:OktaVerify、Email、およびSMS。
  • MFAPassCode(オプション):MFA フローを設定した場合にのみ設定。 空 / 無効に設定されている場合、ドライバーは最初にMFA チャレンジを発行し、設定されたMFA タイプに基づいてプラットフォームがデバイスまたはE メールでワンタイムパスワードを送信するようにトリガーします。 取得したワンタイムパスワードの値をMFAPassCode 接続プロパティに渡す別の接続を再発行する必要があります。

次は接続文字列の例です。

AuthScheme=PingFederate;User=PingFederateUserName;Password=PingFederatePassword;URL='http://sharepointserver/mysite';

OneLogin

AuthSchemeOneLogin に設定します。OneLogin に接続するには、次の接続プロパティを使用します。

  • User:OneLogin ユーザーに設定。
  • Password:ユーザーのOneLogin パスワードに設定。
  • SSOExchangeUrl:ID プロバイダーのSalesforce OAuth 2.0トークンエンドポイント。これは、Salesforce のアカウント設定で[管理者設定]->[セキュリティのコントロール]->[シングルサインオン設定]に移動し、目的の組織を選択することで確認できます。
OneLogin へ認証するには、以下のSSOProperties が必要です。

  • OAuthClientId:[Developers]->[API Credentials]->[Credential]->[ClientId]を選択して取得できるOAuthClientId に設定。
  • OAuthClientSecret:[Developers]->[API Credentials]->[Credential]->[ClientSecret]を選択して取得できるOAuthClientSecret に設定。
  • Subdomain:SSO アプリにアクセスするOneLogin ユーザーのサブドメインに設定。例えば、OneLogin URL がsplinkly.onelogin.com の場合、サブドメインの値としてsplinkly を入力します。
  • AppId:SSO アプリのId に設定。
  • リージョン(オプション):OneLogin アカウントで使用しているリージョンに設定。OneLogin API は複数のリージョンで動作し、このプロパティは正しいドメインを見つけるために使用されます。次の値の1つを取ります。
    • US(デフォルト)
    • EU

次は接続文字列の例です。

AuthScheme=OneLogin;User=OneLoginUserName;Password=OneLoginPassword;SSOProperties='OAuthClientID=3fc8394584f153ce3b7924d9cd4f686443a52b;OAuthClientSecret=ca9257fd5cc3277abb5818cea28c06fe9b3b285d73d06;Subdomain=OneLoginSubDomain;AppId=1433920';

PingFederate

AuthSchemePingFederate に設定します。次の接続プロパティを設定する必要があります。

  • User:PingFederate ユーザーに設定。
  • Password:ユーザーのPingFederate パスワードに設定。
  • SSOLoginURL:SSO プロバイダーが使用するログインURL に設定。
  • SSOExchangeUrl: ID プロバイダーのSalesforce OAuth 2.0トークンエンドポイント。これは、Salesforce のアカウント設定で[管理者設定]->[セキュリティのコントロール]->[シングルサインオン設定]に移動し、目的の組織を選択することで確認できます。
SSOProperties のうちPingFederate への認証には以下があります。

  • AuthScheme(オプション):IdP エンドポイントに使われる認可スキーム。IdP にはNone またはBasic が使用可能です。
追加で次のSSOPropertiesを使って、SSOLoginURL 用の相互SSL 認証(WS-Trust STS エンドポイント)の設定が可能です。
  • SSLClientCert
  • SSLClientCertType
  • SSLClientCertSubject
  • SSLClientCertPassword
以下は接続文字列の例です。
AuthScheme=PingFederate;User=pingFederateUser;Password=pingFederatePassword;SSOLoginURL='https://<authority>/idp/sts.wst';SSOExchangeUrl='https://domain.my.salesforce.com/services/oauth2/token?so=00D3000006JDF';

ADFS

AuthSchemeADFS に設定します。次の接続プロパティを設定する必要があります。

  • User:ADFS ユーザーに設定。
  • Password:ユーザーのADFS パスワードに設定。
  • SSOLoginURL:SSO プロバイダーが使用するログインURL に設定。
  • SSOExchangeUrl:ID プロバイダーのSalesforce OAuth 2.0トークンエンドポイント。これは、Salesforce のアカウント設定で[管理者設定]->[セキュリティのコントロール]->[シングルサインオン設定]に移動し、目的の組織を選択することで確認できます。

ADFS へ認証するには、以下のSSOProperties が必要です。

  • RelyingParty:この属性は、Salesforce のADFS サーバー上のRelying Party Identifier の値です。
以下は接続文字列の例です。
AuthScheme=ADFS;User=username;Password=password;SSOLoginURL='https://sts.company.com';SSOProperties='RelyingParty=https://saml.salesforce.com';

ADFS 統合

ADFS 統合フローでは、現在ログインしているWindows ユーザーの資格情報で接続します。 ADFS 統合フローを使用するには、User およびPassword を指定せず、それ以外の設定は上記のADFS ガイドと同じ手順を実行してください。

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