FTP アダプターのベスト プラクティスと推奨事項
FTP アダプターのベスト プラクティス、セキュリティに関する推奨事項、および機能強化について説明します。
ベスト プラクティス
受信したファイルの一部を定期的に一時フォルダから削除することで、ファイルがコンピュータ リソースを使い続けたり、場合によってはサービスが中断されたりするのを防いでください。
ストリーミング サーバーでの作業中は、メッセージ ボックス データベースでファイル全体が取得されるまでは、新しいファイルへの読み取りアクセスを拒否してください。 ファイルの一部分が FTP アダプタからメッセージ ボックス データベースに送信された場合、メッセージ ボックス データベースではメッセージが正常に保存されますが、FTP アダプタでは受信場所からメッセージの断片を削除できません。
FTP アダプタの受信ハンドラの高可用性を実現するには、クラスタ化された BizTalk ホスト インスタンスで実行されるように、FTP アダプタの受信ハンドラを構成する必要があります。 詳細については、「 クラスター化されたホスト内でのアダプター ハンドラーの実行に関する考慮事項」を参照してください。
セキュリティに関する推奨事項とヒント
BizTalk Serverは、ファイル転送プロトコル (FTP) サーバーからファイルを受信し、他のアプリケーション用の FTP サーバーにファイルを送信できます。 BizTalk Server は FTP サーバーとして機能しません。
FTP は、本質的にセキュリティで保護されていません。ユーザー名、パスワード、およびその他の資格情報は、クリア テキストでネットワークを通過します。 同様に、アップロードまたはダウンロードされたファイルもクリア テキストで移送されるため、途中で簡単に表示または改ざんできます。 さらに、攻撃者が FTP サーバー自体になりすます可能性があります (非認証サーバーによる攻撃とも呼ばれます)。 この場合、特定の FTP サーバーが実際に通信しようとしたコンピューターであるかどうかを判断する方法はありません。
これらの問題を解決するために、FTP アダプターでは、暗号化によるデータの機密性を確保する SSL/TLS プロトコルがサポートされています。
FTP プロトコルを使用する場合の一般的なセキュリティに関する考慮事項については、 インターネット FAQ アーカイブ (https://go.microsoft.com/fwlink/p/?LinkId=24779) を参照してください。
FTP アダプターをセキュリティで保護して環境に展開するには、次のガイドラインに従うことをお勧めします。
サーバーをセキュリティで保護し、データへのアクセスを制限します。 FTP プロトコルはセキュリティで保護されたプロトコルではないので、常に危険にさらされます。 専用接続を使用し、サーバーと、BizTalk Serverと FTP ホスト間の接続を制限することで、FTP サーバーがセキュリティで保護されていることを確認できます。 FTP サーバーのセキュリティ ポリシーを設定して、FTP クライアントとの、セキュリティで保護された接続を行うこともできます。
アダプターと FTP サーバー間の通信には、SSL (Secure Sockets Layer) プロトコルを使用するように FTP アダプターを構成します。 SSL プロトコルにより、暗号化を通じてデータの機密性が確保されます。 これにより、ユーザー ID とパスワードは暗号化され、テキスト形式で送信されることはありません。 FTP アダプターでは、FTP 接続のデータ チャネルを暗号化する選択もできます。 「拡張機能(このトピックの)」を参照してください。
安全なファイル転送を実現するには、FTP アダプターによって提供される SSL 固有のプロパティを構成します。 「拡張機能(このトピックの)」を参照してください。
FTP アダプターは、FTP Request for Comments (RFC) 959 をサポートしています。 World Wide Web Consortium (W3C) (https://go.microsoft.com/fwlink/p/?LinkId=24781) を参照してください。 FTP アダプタは、Secure FTP (SFTP) をサポートしていません。 SFTP アダプターを参照してください。
FTP アダプタは、ファイアウォールを越えて使用できます。 使用するファイアウォールの種類によっては、ユーザー名、パスワード、コンピューター、ポート、ファイアウォールの種類 (なし、ソックス 4、ソックス 5)、モードの 1 つ以上のファイアウォール プロパティを構成する必要がある場合があります。
リモート FTP サーバーは安全な場所に配置することをお勧めします。 このサーバーの物理的なセキュリティとネットワークのセキュリティを確保して、未認証のサーバーの攻撃を最小限に抑える必要があります。
FTP アダプタでは、エンタープライズ シングル サインオンの使用がサポートされています。 「 Enterprise シングル サインオンの実装」を参照してください。
既定では、FTP 受信アダプターはダウンロード後に FTP サーバーからファイルを削除するので、FTP サーバーへの書き込みアクセス許可が必要になります。 ただし、FTP アダプターでは、読み取り専用の場所からのファイルのダウンロードがサポートされています。 「拡張機能(このトピックの)」を参照してください。
FTP 送信ポートを使用する場合は、送信ポートの構成時にユーザー ID とパスワードの組み合わせを指定して格納する必要があります。 アダプタは、この情報を使用して FTP サーバーに接続します。 ユーザーの資格情報は、プレーンテキストで SQL Server データベースに格納されます。 動的な送信ポートでは、資格情報は FTP サーバーに送信されます。 実稼働環境の要件によってより強力なセキュリティが保証されている場合は、サーバーに対して匿名の資格情報を使用します。
システムからアカウントの入力を求められたら、ローカル システム アカウントではなく、既存のユーザー アカウントを入力することをお勧めします。 これにより、より優れたセキュリティを実装し、ログオンせずにアダプタを自動実行モードで実行できます。
機能強化
セキュリティで保護された FTP サーバーとの間でのデータの転送
FTP アダプターは、Secure Sockets Layer (SSL)/トランスポート レベル セキュリティ (TLS) を介した FTPS サーバーからのファイル転送をサポートします。 SSL/TLS によって、暗号化をとおしたデータの機密性が確保されます。 セキュリティで保護されたモードを有効にするには、アダプターが提供する SSL 固有のプロパティを構成する必要があります。 アダプターを使用するとセキュリティで保護された FTP サーバーからのデータの読み取りと書き込みが可能になるため、送信ハンドラー/ポートおよび受信ハンドラー/場所を構成するときも SSL 固有のプロパティを使用できます。
BizTalk Server 2016 以降では、FTP アダプターで SYST コマンドは不要になります。
FTP サーバーの種類 プロパティ – SYST コマンドを必要としないサーバーを使用するには、このプロパティを設定します。
SSL 固有のプロパティを構成するときは、以下のオプションを使用できます。
SSL プロパティを使用 する – FTP アダプターが転送セッションごとに SSL を使用するように、このプロパティを設定します。
[データ保護の有効化 ] プロパティ – このプロパティを設定して、データ暗号化を有効にします。 この設定が動作するためには、FTPS サーバーのセキュリティ ポリシーで、アダプターによって SSL 接続のセキュリティを保護することを考慮に入れる必要があります。
FTPS 接続モード プロパティ – セキュリティがアクティブ化されるタイミングを決定するには、このプロパティを設定します。
暗黙的モードでは、アダプターがサーバーに接続するとすぐに、セキュリティが自動的にオンになります。
明示的モードでは、アダプターはコマンドを送信して、セキュリティで保護された制御チャネルを開始します。
Note
FTP アダプターはサーバー証明書の失効確認をサポートしていません。
読み取り専用とマーク付けされている場所からのファイル ダウンロードのサポート
FTP アダプターでは、読み取り専用ファイルの場所からのファイルのダウンロードがサポートされています。 また、アダプターはダウンロードしたファイルの一覧をデータベースで管理するようになりました。 次回ダウンロード時には、FTP サーバー上のファイルの一覧と、アダプターによって管理されているファイルの一覧とが比較され、サーバー上の新しいファイルだけがダウンロードされます。 2 つのダウンロードの間に既存のファイルが更新されるシナリオをサポートするには、FTP 受信場所の [タイムスタンプ比較を有効にする] プロパティを設定して、ファイルのタイムスタンプもチェックするようにアダプターを構成できます。 このような場合は、ファイル名が同じでもタイムスタンプが更新された場合でも、アダプターはファイルをダウンロードします。
FTP サーバーによっては、変更されたタイムスタンプのファイルへの関連付けをサポートしていないことがあります。 そのような場合、アダプターを使用すれば、ファイルを再度ダウンロードする間隔を指定できます。 この間隔を構成するには、FTP 受信場所の [間隔の再ダウンロード] プロパティを設定します。
次の表は、 ダウンロード後の削除、 タイムスタンプ比較の有効化 、および 間隔の再ダウンロード の各プロパティに設定されたさまざまな値に対する FTP アダプターの予期される動作を示しています。
ダウンロード後に削除 | タイムスタンプ比較の有効化 | 再ダウンロード間隔 | アダプターの動作 |
---|---|---|---|
はい | 適用なし | 適用なし | アダプターは、ファイルをダウンロードした後、そのファイルを FTP サーバーから削除します。 これがアダプターの既定の動作です。 |
いいえ | はい | 適用なし | アダプターは、ファイルをダウンロードした後、そのファイルを FTP サーバーから削除しません。 代わりに、アダプターは MDTM コマンドを使用して、ファイルの最終変更タイムスタンプを比較します。 タイムスタンプに応じて、アダプターはファイルを再度ダウンロードします。 |
いいえ | いいえ | 適用できます | FTP アダプターは、ファイルが変更されているかどうかにかかわらず、指定された間隔が経過すると、FTP サーバーからファイルをダウンロードします。 |
ASCII モードでのアトミックなファイル転送のサポート
FTP アダプターは、ASCII モードのアトミック ファイル転送をサポートしています。 ASCII モードでアトミック ファイル転送を有効にするには、アダプターで 一時フォルダー プロパティを使用します。 このプロパティは、ファイルが最初に移動される FTP サーバー上の一時的な場所を指定します。 一時的な場所にファイルが完全に転送されたら、次に、FTP サーバー上の関連する場所に移動されます。 この場合、FTP サーバー上の一時的な場所と関連する場所との間でファイル転送がアトミックであることが前提となります。
Note
一時フォルダーを ASCII ファイルに使用する拡張機能は 、Send にのみ適用され、 Receive には適用されません。 この機能を実装する主な理由は、サード パーティ製アプリケーションはファイルの書き込みが完了しなければ読み取らないためです。 BizTalk がファイルを受信する場合、アダプターはファイルの読み取りが完了した後でのみ BizTalk にファイルを送信します。
Note
バイナリ モードでは、 一時フォルダー プロパティを使用して、間に障害が発生した場合にファイル転送を再開することもできます。 ASCII モードでは適用されません。 ASCII モードの場合、 Temporary Folder プロパティはアトミック ファイル転送にのみ使用されます。