SFTP アダプター

BizTalk Serverには、SSH ファイル転送プロトコルを使用して、セキュリティで保護された FTP サーバーからメッセージを送受信するための SFTP アダプターが含まれています。 このトピックでは、 SFTP 受信場所を構成し、セキュリティで保護された FTP サーバーからメッセージを受信および送信するように SFTP 送信ポートを構成する手順について説明します。 また、一般的な質問と回答も含まれます。

前提条件

2016 BizTalk Server以降、SFTP アダプターは WinSCP を使用して SFTP に接続するため、より広範な SFTP サーバーをサポートしています。 BizTalk Server ランタイムで WinSCP をダウンロードします。 各BizTalk Server verison でサポートされている WinSCP バージョンを必ずチェックしてください。

  • CU1 または CU2 で 2020 をBizTalk Serverする - WinSCP バージョン 5.17.6
  • BizTalk Server 2020 - WinSCP バージョン 5.15.4
  • BIZTALK SERVER 2016 WITH CU9 - WinSCP バージョン 5.19.2
  • CU7 を使用した BizTalk Server 2016 - WinSCP バージョン 5.15.9
  • BizTalk Server 2016 - WinSCP バージョン 5.7.7

または ハードウェアとソフトウェアの要件

BizTalk Server 2013 および BizTalk Server 2013 R2 では、サーバーの互換性が制限された WinSCP の代わりに古い ssh ライブラリを使用します。

受信場所を構成する

Note

受信場所を作成する前に、一方向の受信ポートを既に追加しておく必要があります。 特定の手順については、「 受信ポートの作成 」を参照してください。

  1. BizTalk Server管理コンソールで、[BizTalk Server]、[BizTalk グループ]、[アプリケーション] の順に展開し、受信場所を作成するアプリケーションを展開します。

  2. 左側のウィンドウで、[ 受信ポート ] ノードをクリックし、右側のウィンドウで、新しい受信場所に関連付ける受信ポートを右クリックし、[ プロパティ] をクリックします。

  3. [ 受信ポートのプロパティ ] ダイアログ ボックスの左側のウィンドウで [ 受信場所] を選択し、右側のウィンドウで [ 新規作成 ] をクリックして、新しい受信場所を作成します。

  4. [受信場所のプロパティ] ダイアログ ボックスの [トランスポート] セクションで、[種類] ドロップダウン リストから [SFTP] を選択し、[構成] をクリックして受信場所のトランスポート プロパティを構成します。

  5. SFTP トランスポートのプロパティで、次の操作を行います。

    Others

    プロパティ 目的
    Connection Limit (接続の制限) サーバーに対して開くことができるコンカレント接続の最大数を指定します。

    この設定はサーバーごと、および受信場所ごとです。 次のシナリオで考えてみましょう。

    - ConnectionLimit プロパティを同じ値に設定するなど、同じ構成プロパティ値を持つ 2 つの受信場所があります。 たとえば、 プロパティは 6 に設定されます。 この状況では、両方の受信場所で使用される 1 つの接続プール (使用可能な接続が 6 つあります) があります。

    - 同じ構成値で構成された 2 つの受信場所があり、ConnectionLimit プロパティが異なる値に設定されています。 たとえば、ReceiveLocation1 プロパティは 6 に設定され、ReceiveLocation2 プロパティは 5 に設定されます。 このような状況では、各受信場所には、独自の使用可能な接続を持つ独自の接続プールがあります。 ReceiveLocation1 接続プールの使用可能な接続の数は 6 です。 ReceiveLocation2 接続プールの使用可能な接続の数は 5 です。
    ログ BizTalk Server 2016 以降で使用できます。

    完全なパスを入力して、クライアント側のログ ファイルを作成します。 このログ ファイルを使用して、エラーのトラブルシューティングを行います。
    最大接続再利用時間 (秒単位) BizTalk Server 2016 CU 7 以降で使用できます。

    接続の再利用時間を最大にすると、接続が特定の時間使用された後に、接続を正常に閉じ、プールから削除できます。 値が 0 以下の場合は、この動作が無効になっていることを示します。

    ポーリング

    プロパティ 目的
    タイムスタンプ比較の有効化 BizTalk Server 2016 累積的な更新プログラム 6 以降で使用できます。

    [ ダウンロード後に保持する] が True に設定されている場合、このプロパティは、ファイルタイムスタンプの変更によってファイルの再ダウンロードがトリガーされるかどうかを決定します。

    既定値: False
    ポーリング間隔 アダプターがサーバーをポーリングする間隔を指定します。 継続してポーリングを行うには、この値をゼロに設定します。

    既定値: 5
    再ダウンロード間隔 BizTalk Server 2016 累積的な更新プログラム 6 以降で使用できます。

    ファイルを再度ダウンロードする間隔を指定します。 [ダウンロード後に保持する] が True で、[タイムスタンプ比較を有効にする] が False に設定されている場合に適用されます。 -1 に設定すると、ファイルは再びダウンロードされません。

    既定値: 0

    -1 は、アダプターがファイルを再度ダウンロードしないことを示します。

    0 は、ポーリング周期ごとにアダプターがファイルをダウンロードします。
    ダウンロード後も保持する BizTalk Server 2016 累積的な更新プログラム 6 以降で使用できます。

    ダウンロード後にアダプターが SFTP サーバーからファイルを保持するかどうかを指定します。

    既定値: False
    ユニット 指定するポーリング間隔の単位を指定します。たとえば、秒、分、時間、日などです。

    既定値:

    プロキシ (BizTalk Server 2013 R2 以降で使用可能)

    プロパティ 目的
    Address DNS 名か、プロキシ サーバーの IP アドレスを指定します。
    パスワード プロキシ サーバーのパスワードを指定します。
    Port プロキシ サーバーのポートを指定します。
    Type プロキシ サーバーで使用されるプロトコルを指定します。
    UserName プロキシ サーバーのユーザー名を指定します。

    Security

    プロパティ 目的
    任意の SSH サーバー ホスト キーを受け入れる True の場合、受信場所はサーバーからの SSH 公開ホスト キーを受け入れます。 False の場合、受信場所は認証にサーバーのフィンガープリントを使用します。 SSHServerHostKeyFingerPrint プロパティにフィンガープリントを入力します。

    既定値: False
    クライアント認証モード クライアントを SSH サーバーに認証するために受信場所で使用する認証方法を選択します。 Password に設定されている場合は、Password プロパティに値を入力する必要があります。 PublicKeyAuthentication に設定されている場合は、PrivateKey プロパティにユーザーの秘密キーを入力する必要があります。 MultiFactorAuthentication に設定されている場合は、パスワードPrivateKey を使用してユーザー名を入力する必要があります。 さらに、秘密キーがパスワードで保護されている場合は、 PrivateKeyPassword プロパティのパスワードと同様にパスワードを入力します。

    既定値: パスワード
    暗号化暗号 BizTalk Server 2013 R2 以降で使用できます。

    暗号化暗号の種類を入力します。

    BizTalk Server 2013 R2 オプション: Auto、AES、TripleDES

    BizTalk Server 2016 オプション: Auto、AES、Arcfour、Blowfish、TripleDES、DES
    キー交換アルゴリズムの選択ポリシー BizTalk Server 2016 累積的な更新プログラム 6 以降で使用できます。

    KEX の優先順位のコンマ区切りリストを指定します。 トークン WARN は、標準以下の KEX を区切るために使用されます。 WARN の後の何も BizTalk SFTP アダプターでは使用されません。 例: ecdh、dh-gex-sha1、dh-group14-sha1、rsa、WARN、dh-group1-sha1。 最新の情報については、WinSCP の Web サイトを参照してください。
    パスワード ClientAuthenticationMode を Password に設定した場合は、SFTP ユーザー パスワードを指定します。
    秘密キー ClientAuthenticationMode を PublicKeyAuthentication に設定した場合は、SFTP ユーザーの秘密キーを指定します

    メモ: 秘密キー ファイルは、指定した .ppk ファイルである必要があります。
    秘密キーのパスワード PrivateKey プロパティで指定されたキーに必要な場合は、秘密キー パスワードを指定します。
    SSH サーバー ホスト キー FingerPrint SSH サーバーのパブリック ホスト キーの 指紋を指定します。
    [SSO 関連] BizTalk Server 2020 以降で使用できます。

    エンタープライズ シングル サインオンの関連アプリケーションを指定します。
    [ユーザー名] SFTP サーバーにログオンするためのユーザー名を指定します。

    SSH サーバー

    プロパティ 目的
    ファイル マスク セキュリティで保護された FTP サーバーからファイルを取得するときに使用するファイル マスクを指定します。 パフォーマンスを向上させるには、他の保護されたファイルをダウンロードしないように、より具体的にしてください。
    フォルダー パス 受信場所がファイルを取得できる、セキュリティで保護された FTP サーバー上のフォルダー パスを指定します。 パフォーマンスを向上させるには、受信しない多数のファイルを含むフォルダーを使用しないようにします。
    Port ファイル転送が実行される、セキュリティで保護された FTP サーバーのポート アドレスを指定します。
    サーバー アドレス セキュリティで保護された FTP サーバーのサーバー名または IP アドレスを指定します。
  6. [OK] をクリックします。

  7. [ 受信場所のプロパティ ] ダイアログ ボックスで、受信場所を構成するための適切な値を入力し、[ OK ] をクリックして設定を保存します。 [ 受信場所のプロパティ ] ダイアログ ボックスの詳細については、「 受信場所の作成」を参照してください。

送信ポートを構成する

  1. BizTalk Server管理コンソールで、新しい送信ポートを作成するか、既存の送信ポートをダブルクリックして変更します。 詳細については、「 送信ポートの作成」を参照してください。 すべての送信ポート オプションを構成し、[全般] タブの [トランスポート] セクションの [種類] オプションに SFTP を指定します。

  2. [ 全般 ] タブの [ トランスポート ] セクションで、[ 構成 ] ボタンをクリックします。

  3. [SFTP トランスポートのプロパティ] に、次のように入力します。

    Others

    プロパティ 目的
    Connection Limit (接続の制限) サーバーに対して開くことができるコンカレント接続の最大数を指定します。
    ログ BizTalk Server 2016 以降で使用できます。

    完全なパスを入力して、クライアント側のログ ファイルを作成します。 このログ ファイルを使用して、エラーのトラブルシューティングを行います。
    最大接続再利用時間 (秒単位) BizTalk Server 2016 CU 7 以降で使用できます。

    接続の再利用時間を最大にすると、接続が特定の時間使用された後に、接続を正常に閉じ、プールから削除できます。 値が 0 以下の場合は、この動作が無効になっていることを示します。
    [一時フォルダ] BizTalk Server 2013 R2 以降で使用できます。

    サイズの大きなファイルを、同じサーバーの指定された場所に原始的に移動する前のアップロード先となる SFTP サーバーの一時フォルダー。

    プロキシ (BizTalk Server 2013 R2 以降で使用可能)

    プロパティ 目的
    Address DNS 名か、プロキシ サーバーの IP アドレスを指定します。
    パスワード プロキシ サーバーのパスワードを指定します。
    Port プロキシ サーバーのポートを指定します。
    Type プロキシ サーバーで使用されるプロトコルを指定します。
    [ユーザー名] プロキシ サーバーのユーザー名を指定します。

    Security

    プロパティ 目的
    任意の SSH サーバー ホスト キーにアクセスする True の場合、送信ポートはサーバーからの SSH 公開ホスト キーを受け入れます。 False の場合、ポートは SSHServerHostKey プロパティで指定されたキーを持つホスト キーと一致します。

    既定値: False
    クライアント認証モード 送信ポートが SSH サーバーに対するクライアントの認証に使用する認証方法を指定します。 Password に設定されている場合は、Password プロパティに値を入力する必要があります。 PublicKeyAuthentication に設定されている場合は、PrivateKey プロパティにユーザーの秘密キーを入力する必要があります。 MultiFactorAuthentication に設定されている場合は、パスワードPrivateKeyをユーザー名に指定する必要があります。 さらに、秘密キーがパスワードで保護されている場合は、 PrivateKeyPassword プロパティのパスワードと同様にパスワードを入力します。

    既定値: パスワード
    暗号化暗号 BizTalk Server 2013 R2 以降で使用できます。

    暗号化暗号の種類を入力します。

    BizTalk Server 2013 R2 オプション: Auto、AES、TripleDES

    BizTalk Server 2016 オプション: Auto、AES、Arcfour、Blowfish、TripleDES、DES
    キー交換アルゴリズムの選択ポリシー BizTalk Server 2016 累積的な更新プログラム 6 以降で使用できます。

    KEX の優先順位のコンマ区切りリストを指定します。 トークン WARN は、標準以下の KEX を区切るために使用されます。 例: ecdh、dh-gex-sha1、dh-group14-sha1、rsa、WARN、dh-group1-sha1。 最新の情報については、WinSCP の Web サイトを参照してください。
    パスワード [ClientAuthenticationMode] を [パスワード] に設定した場合は、SFTP ユーザー パスワードを指定します
    秘密キー ClientAuthenticationModePublicKeyAuthentication に設定した場合は、SFTP ユーザーの秘密キーを指定します。
    秘密キーのパスワード PrivateKey プロパティで指定されたキーに必要な場合は、秘密キー のパスワードを指定します。
    SSH サーバー ホスト キーのフィンガー プリント AccessAnySSHServerHostKey プロパティが False に設定されている場合に、アダプターがサーバーの認証に使用するサーバーのフィンガープリントを指定します。 指紋が一致しない場合、接続は失敗します。
    [SSO 関連] BizTalk Server 2020 以降で使用できます。

    エンタープライズ シングル サインオンの関連アプリケーションを指定します。
    ユーザー名 セキュリティで保護された FTP サーバーのユーザー名を指定します。

    SSH サーバー

    プロパティ 目的
    存在する場合は追加 セキュリティで保護された FTP サーバーに転送中のファイルが既に転送先に存在する場合、このプロパティは転送中のファイルのデータを既存のファイルに追加するかどうかを指定します。 True に設定すると、データが追加されます。 False に設定すると、移行先サーバーのファイルが上書きされます。

    既定値: False
    フォルダー パス ファイルのコピー先となる、セキュリティで保護された FTP サーバー上のフォルダー パスを指定します。
    Port ファイル転送が実行される、セキュリティで保護された FTP サーバーのポート アドレスを指定します。
    サーバー アドレス セキュリティで保護された FTP サーバーのサーバー名または IP アドレスを指定します。
    ターゲット ファイル名 セキュリティで保護された FTP サーバーに転送されるファイルの名前を指定します。 ターゲット ファイル名にマクロを使用することもできます。
  4. [ OK] を クリックし、もう一度 [OK] を クリックして設定を保存します。

新しい WinSCP バージョンを使用する

BizTalk Serverで新しいバージョンの WinSCP を使用するには、読み込むアセンブリを BizTalk が認識できるように、アセンブリ リダイレクトを追加します。 リダイレクトは、BizTalk Server構成ファイル (BTSNTSVC.exe.config (32 ビット ホスト インスタンス) と BTSNTSVC64.exe.config (64 ビット ホスト インスタンス) で構成されます。

構成構文の例を次に示します。 を実際のバージョンに置き換えてください %NEWVERSION%

<configuration>
 <runtime>
  <assemblyBinding>
   <dependentAssembly>
    <assemblyIdentity name="WinSCPnet" publicKeyToken="2271ec4a3c56d0bf" culture="neutral" />
    <bindingRedirect oldVersion="1.0.0.0-1.65535.65535.65535" newVersion="%NEWVERSION%"/>
   </dependentAssembly>
  </assemblyBinding>
 </runtime>
</configuration>

完了すると、構成は次のようになります。

構成ファイル内のアセンブリ リダイレクト。

よく寄せられる質問

Question Answer
どの SFTP サーバーがサポートされていますか? 「サポートされている SFTP サーバー」を参照してください。 BizTalk Server 2016 以降では、SFTP アダプターは WinSCP を使用して SFTP に接続します。 その結果、WinSCP をサポートする SFTP サーバーが機能する必要があります。
SFTP アダプターを相互認証方法 (公開キーとパスワード) とともに使用することはできますか? - BizTalk Server 2013 R2 以降、はい。 MultiFactorAuthentication に設定されている場合は、ユーザー名パスワードPrivateKey を指定する必要があります。 さらに、秘密キーがパスワードで保護されている場合は、 PrivateKeyPassword プロパティにもパスワードを指定します。

- BizTalk Server 2013 の場合、パスワードまたは PublicKeyAuthentication を使用できます。 MultiFactorAuthentication は、BizTalk Server 2013 に付属する SFTP アダプターではサポートされていません。
秘密キー形式はサポートされていますか? OpenSSH 秘密キー形式は使用できますか? SFTP アダプターは PuTTY 秘密キー ファイル形式のみをサポートしています。 PuTTYgen を使用すると OpenSSH から .ppk 形式に変換できます。
SSHServerHostKeyFingerPrint では、どのような指紋アルゴリズムと形式を使用する必要がありますか? サーバーのキーの MD5 フィンガープリントは、 の形式 ssh-rsa 2048 90:e4:9b:67:d9:22:a7:5f:6f:33:db:6a:b1:23:96:12で使用する必要があります。
SFTP アダプターは 256 ビットの暗号化をサポートしていますか? はい。SFTP アダプターは 256 ビットの暗号化をサポートしています。 次のような暗号化アルゴリズムがサポートされています。

- AES 暗号化: 256 ビット、192 ビット、または 128 ビット SDCTR または CBC

- 3DES (Triple-DES) 暗号化: 168 ビット SDCTR または CBC
アダプターでサポートされる SSH のバージョンを教えてください。 SSH2 のみです。 バージョンが SSH1 である SFTP サーバーと接続を確立することはできません。
ファイル マスクでは大文字と小文字が区別されますか。 いいえ。 *.txt と *.TXT は同様に機能します。 BizTalk Server 2013 の最新の累積的な更新プログラムをインストールしてください。 BizTalk Server 2013 RTM リリースでは、大文字と小文字が区別されるファイル マスクがありました。
バインドをエクスポートすると [パスワード] フィールドが空になります。 このようなバインドをインポートして受信場所を作成する場合、どのような変更を加える必要がありますか。 バインド ファイルを編集し、[パスワード] フィールドに変更を加えてください。 また、 の <Password vt="1">MySecretPassword</Password>vt="1" は null 値を示します。 これを vt="8" に変更します。これは文字列を示します。 次に例を示します。

<Password vt="8">MySecretPassword</Password>

詳細については、 https://msdn.microsoft.com/library/system.runtime.interopservices.varenum(v=vs.100).aspx をご覧ください
ファイル パスの指定方法を教えてください。 通常、パスは の形式 /folder/pathnameで指定されます。 ただし、サーバーの種類によっては別の形式になる場合や、先頭または末尾のスラッシュの有無が異なる場合があります。 そのため、次のように指定することもできます。

- /folder/pathname

- /folder/pathname/

- folder/pathname

- folder/pathname/